diff --git a/docs/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.html b/docs/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.html
index 6c14253d8..5fe3a3dc3 100644
--- a/docs/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.html
+++ b/docs/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.html
@@ -585,17 +585,12 @@
Ecological Interactions
Ecological interaction network for Methylomicrobium-Chlorella Methane Sequestration Coculture
- 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, mutualism, colonization facilitation).
+ Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction (mutualism).
Taxon
-
- Cross-feeding
-
Ecological Interactions
Colonization facilitation
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -615,8 +610,7 @@ Ecological Interactions
Methane Removal and Mutualistic Growth
MUTUALISM
- M. alcaliphilum 20Z and Chlorella sp. HS2 form a mutualistic coculture in which methane removal and growth of both organisms increase relative to the tested controls.
-
+ The M. alcaliphilum 20Z/Chlorella sp. HS2 coculture enhanced growth of both members under saline conditions (>3.0%), supporting the authors' mutualistic-growth interpretation. Increased methane provision in enclosed bottles led to saturated methane removal. Positive growth and removal are retained, without assigning all benefits to measured reciprocal O2/CO2 transfer or implying obligatory dependence.
Source Taxon: Chlorella sp. HS2
@@ -671,7 +665,7 @@ Methane Removal and Mutualistic Growth
→ Methane and Carbon Dioxide Mitigation
-
The mutualistic O2/CO2 exchange that increases growth of both partners under methane feeds the downstream methane removal and biomass carbon-sequestration phenotype.
+
PARTIAL - enhanced partner growth and methane utilization contribute to greater whole-coculture biomass carbon sequestration. The exact-pair abstract supports these positive outcomes but does not isolate reciprocal gas exchange as their sole mediator; it explicitly implicates factors beyond gaseous exchange.
@@ -690,7 +684,7 @@ Evidence
- SUPPORT (IN_VITRO)
- "Increased CH4 removal and growth of both microbes were observed in co-cultures."
+ "Co-culture significantly enhanced the growth of both microbes"
@@ -703,7 +697,7 @@ Evidence
- SUPPORT (IN_VITRO)
- "Co-culture significantly enhanced the growth of both microbes"
+ "increased methane provision in enclosed serum bottles led to saturated methane removal"
@@ -714,17 +708,19 @@ Evidence
-
The methanotroph-microalga consortium was proposed as a halotolerant platform for simultaneous methane and carbon dioxide mitigation, with methane-fed cocultures increasing carbon sequestered in biomass.
-
+
Methane-fed cocultures showed nearly an order of magnitude more carbon sequestered in biomass in the reported analyses. This is a whole-culture carbon endpoint and supports the proposed halotolerant CH4/CO2 mitigation platform, not a quantified methanotroph-to-Chlorella carbon flux or demonstrated operation on real wastewater.
+
+
-
Source Taxon: Methylomicrobium alcaliphilum 20Z
+
Participating Taxa:
+ Methylomicrobium alcaliphilum 20Z,
+ Chlorella sp. HS2
-
Target Taxon: Chlorella sp. HS2
+
@@ -798,19 +794,6 @@
Evidence
-
-
-
- "Explicitly models the exchange of in situ produced O2 and CO2 within the coculture"
-
-
-
@@ -818,17 +801,19 @@ Evidence
-
The coculture showed robust metabolic coupling under saline conditions and maintained culture pH suitable for methanotrophic growth.
-
+
Methane-fed saline cocultures maintained pH suitable for methanotrophic growth, alongside enhanced growth and carbon sequestration. This culture-level observation supports a favorable chemical environment; it does not establish colonization facilitation or selectively demonstrate that Chlorella-driven pH recovery causes the growth benefit.
-
Source Taxon: Chlorella sp. HS2
+
Participating Taxa:
-
Target Taxon: Methylomicrobium alcaliphilum 20Z
+ Methylomicrobium alcaliphilum 20Z,
+
+ Chlorella sp. HS2
+
+
@@ -852,8 +837,7 @@
Saline Metabolic Coupling and pH Recovery
→ Methane and Carbon Dioxide Mitigation
-
Saline pH recovery and robust methanotroph-alga metabolic coupling sustain methane-fed coculture conditions that increase methane removal and biomass carbon sequestration.
-
+
HYPOTHESIZED - maintaining a suitable pH could sustain methanotrophic activity and thereby biomass carbon sequestration. The available exact-pair abstract reports the association, not a selective pH perturbation establishing its contribution independently of gas supply or other interactions.
@@ -872,7 +856,7 @@ Evidence
- SUPPORT (IN_VITRO)
- "robust metabolic coupling between the two microbes"
+ "maintained a suitable cultural pH suitable for methanotrophic growth"
@@ -882,36 +866,42 @@ Evidence
doi:10.1016/j.biortech.2024.130607
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
- "pH recovery above mild alkaline level was observed in co-cultures."
+ "robust metabolic coupling between the two microbes"
-
-
- - PARTIAL (COMPUTATIONAL)
-
- "the metabolic interactions within the coculture, how they contribute to the enhanced growth observed in the coculture"
+
-
+
-
+
+ Knowledge gaps & discussions (1)
-
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which processes mediate the positive growth, pH and biomass-carbon effects in the exact 20Z/HS2 pair?
+
+
Preserve mutual growth enhancement, methane removal and biomass carbon sequestration. The exact-pair primary abstract was read; publisher full text returned 403, so no absence-of-controls claim is made. Both cited model papers (doi:10.1016/j.mex.2022.101652 and doi:10.20517/mrr.2023.70) actually study M. buryatense 5GB1/A. platensis. Their complete main texts support kinetic/computational context, not independent exact-pair evidence. DynamiCom nitrogen exchange is a prediction awaiting experimental validation, not an HS2 mechanism. Remove those graph evidence items without inventing new nitrogen-exchange structure. #1608 addresses graph scope.
+
Attaches to: ecological_interactions#Methane Removal and Mutualistic Growth, ecological_interactions#Methane and Carbon Dioxide Mitigation, ecological_interactions#Saline Metabolic Coupling and pH Recovery
-
-
+
+
+
+
@@ -1404,7 +1394,7 @@ Evidence
(function() {
var intId = "interaction:1";
- var intType = "CROSS_FEEDING";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1423,7 +1413,7 @@ Evidence
processes.push("photosynthesis");
- var evidenceCount = 3;
+ var evidenceCount = 2;
nodes.push({
id: intId,
@@ -1436,23 +1426,26 @@ Evidence
});
- var srcKey = "Methylomicrobium alcaliphilum 20Z";
- if (taxonNodeIds[srcKey]) {
- links.push({ source: taxonNodeIds[srcKey], target: intId });
- }
+ var participantKeys = [
- var tgtKey = "Chlorella sp. HS2";
- if (taxonNodeIds[tgtKey]) {
- links.push({ source: intId, target: taxonNodeIds[tgtKey] });
- }
+ "Methylomicrobium alcaliphilum 20Z",
+
+ "Chlorella sp. HS2"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
})();
(function() {
var intId = "interaction:2";
- var intType = "COLONIZATION_FACILITATION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -1461,7 +1454,7 @@ Evidence
processes.push("biological process involved in interspecies interaction between organisms");
- var evidenceCount = 3;
+ var evidenceCount = 2;
nodes.push({
id: intId,
@@ -1474,17 +1467,20 @@ Evidence
});
- var srcKey = "Chlorella sp. HS2";
- if (taxonNodeIds[srcKey]) {
- links.push({ source: taxonNodeIds[srcKey], target: intId });
- }
+ var participantKeys = [
- var tgtKey = "Methylomicrobium alcaliphilum 20Z";
- if (taxonNodeIds[tgtKey]) {
- links.push({ source: intId, target: taxonNodeIds[tgtKey] });
- }
+ "Methylomicrobium alcaliphilum 20Z",
+
+ "Chlorella sp. HS2"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
})();
diff --git a/docs/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.html b/docs/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.html
index b2ef55d9c..0c27a8853 100644
--- a/docs/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.html
+++ b/docs/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.html
@@ -581,7 +581,7 @@ Ecological Interactions
Ecological interaction network for Methylotuvimicrobium-Synechococcus Gas Feedstock Coculture
- 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, mutualism).
+ 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).
@@ -594,8 +594,8 @@
Ecological Interactions
Mutualism
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -604,9 +604,8 @@ Ecological Interactions
-
Synechococcus PCC 7002 performs oxygenic photosynthesis and supplies O2 that supports aerobic methane oxidation by M. alcaliphilum 20z, enabling coculture growth without feeding external CH4/O2 mixtures.
+
Synechococcus PCC 7002 supplies photosynthetic O2 supporting aerobic methane oxidation by M. alcaliphilum 20z. The 2017 continuous synthetic-natural-gas process reached steady state under coupled light and O2 limitations, with an O2-depleted reactor and no fed CH4/O2 mixture. Oxygen depletion does not imply anaerobic methane oxidation; directed support alone does not establish reciprocal fitness benefit.
Source Taxon: Synechococcus PCC 7002
@@ -655,8 +654,7 @@
Photosynthetic O2 Support for Methane Oxidation
→ Methane and Carbon Dioxide Conversion to Biomass
-
Photosynthetic O2 production supports aerobic methane oxidation, allowing the coculture to convert methane and carbon dioxide into biomass.
-
+
Photosynthetic oxygen production supports aerobic methane oxidation and thereby positive whole-coculture conversion of gas carbon into biomass. This physiological coupling is retained without requiring an independently measured respiratory-CO2 transfer rate or reciprocal growth enhancement.
@@ -701,7 +699,7 @@ Evidence
CO2 Utilization by Cyanobacterial Partner
CROSS_FEEDING
- CO2 from the supplied gas stream and methanotroph respiration is available to the cyanobacterial partner, allowing simultaneous methane and carbon dioxide utilization into biomass.
+ PARTIAL - the cyanobacterium uses inorganic carbon from the supplied gas/medium and can use CO2 released by methanotroph respiration. The 20ZR/PCC7002 follow-up supports this exchange interpretation using an experimental-computational mass balance, not independently measured partner-specific CO2 flux. The respiratory contribution is inferred from methane uptake and growth stoichiometry; it is not separately isotope-resolved from supplied inorganic carbon.
Source Taxon: Methylomicrobium alcaliphilum 20z
@@ -746,8 +744,7 @@ CO2 Utilization by Cyanobacterial Partner
→ Methane and Carbon Dioxide Conversion to Biomass
-
Cyanobacterial CO2 assimilation closes the reciprocal O2/CO2 exchange that supports simultaneous gas conversion by the two-member coculture.
-
+
PARTIAL - cyanobacterial carbon assimilation contributes to coculture biomass, with respiratory CO2 recycling supported by the follow-up mass-balance interpretation. The individual rates are stoichiometric estimates, so this arrow does not establish the exact recycled fraction or mutually enhanced growth.
@@ -763,10 +760,10 @@ Evidence
PMID:28092828
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
- "simultaneous utilization of methane and carbon dioxide"
+ "robust growth on diverse gas mixtures"
@@ -776,7 +773,7 @@ Evidence
PMID:33064298
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"individual consumption and production rates of O2 and CO2"
@@ -790,13 +787,19 @@ Evidence
-
Coupled methanotrophic methane oxidation and cyanobacterial photosynthesis let the two-member coculture convert methane and carbon dioxide from gas feedstocks into microbial biomass.
-
+
The 20z/PCC7002 coculture converts methane and carbon dioxide from tested gas feedstocks into microbial biomass. This positive system endpoint is distinct from a demonstrated increase in each partner's fitness. The quantitative follow-up uses the 20ZR derivative with PCC7002; its mass-balance estimates should not be treated as direct exchange measurements in the original continuous reactor.
+
+
+
Participating Taxa:
+ Methylomicrobium alcaliphilum 20z,
+
+ Synechococcus PCC 7002
+
+
@@ -864,6 +867,25 @@
Evidence
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ How much cyanobacterial carbon derives from methanotroph respiration under each gas regime?
+
+
Keep positive photosynthetic O2 support and gas-to-biomass conversion. The 2017 exact-pair abstract was read; PNNL PDF download returned 403, so its full controls are not certified. Public PMID:33064298 accepted manuscript and included supplement text were read; equation pages 10-11 visually checked. Organism-specific O2/CO2 rates derive from total gas changes, TIC and growth coefficients, with dissolved O2 neglected. Flow cytometry/OD checks support biomass estimation, not independent gas-flux validation. Its saltwater 20ZR/PCC7002 pair differs from the separate M. capsulatus/C. sorokiniana pair; the latter's oxygen-limited inoculum response must not be imported here. #1609 repairs graph wording; #1612 keeps non-graph measurement/protocol claims open.
+
+
Attaches to: ecological_interactions#Photosynthetic O2 Support for Methane Oxidation, ecological_interactions#CO2 Utilization by Cyanobacterial Partner, ecological_interactions#Methane and Carbon Dioxide Conversion to Biomass
+
+
+
+
+
+
+
@@ -1242,7 +1264,7 @@
Evidence
(function() {
var intId = "interaction:0";
- var intType = "MUTUALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1332,7 +1354,7 @@
Evidence
(function() {
var intId = "interaction:2";
- var intType = "MUTUALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1366,6 +1388,19 @@
Evidence
+ var participantKeys = [
+
+ "Methylomicrobium alcaliphilum 20z",
+
+ "Synechococcus PCC 7002"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
diff --git a/docs/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.html b/docs/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.html
index 1471158ec..a1a09d439 100644
--- a/docs/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.html
+++ b/docs/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.html
@@ -748,6 +748,43 @@
Associated Datasets
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which living-community interactions, if any, affect biomass production in C1 or C2?
+
+
The primary paper PMID:42188319 studies two separately produced, lyophilized biomasses: C1 is Chlorella/Arthrospira; C2 is Kamptonema/Nannochloropsis/Tetraselmis/Chlorella. Preserve this panel, not a five-member coculture. Protein extraction, commercial Alcalase hydrolysis and antioxidant assays are processing steps, not demonstrated ecological cross-feeding. In silico peptides are predictions, not measured exchanged products. Positive hydrolysate activity remains, including assay-dependent effects; phenolic compounds also contribute, and C1 ABTS activity decreases after hydrolysis despite increased ORAC. The empty graph is justified by this source, not evidence that no interaction exists. Complete main text, captions and embedded tables read; supplements, raw proteomics and cultivation patent not audited. #1610 documents this review without adding unsupported nodes or arrows; prior #952/#953 fixes remain intact.
+
+
+
+
+ 1 evidence item(s)
+
+
+
+
were further hydrolyzed with Alcalase
+
Supports post-extraction enzymatic treatment rather than a living microbial transfer mechanism.
+
+
+
+
+
+
+
+
diff --git a/docs/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.html b/docs/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.html
index c0b611632..5657a7555 100644
--- a/docs/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.html
+++ b/docs/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.html
@@ -605,7 +605,7 @@ Ecological Interactions
Microbacterium 2-Aminopyrimidine Release
CROSS_FEEDING
- Microbacterium sp. BR1 cleaves sulfadiazine to release the dead-end intermediate 2-aminopyrimidine, making the intermediate available for degradation by Terrabacter.
+ Microbacterium sp. BR1 transforms sulfadiazine and releases 2-aminopyrimidine (2-AP), which accumulates in its axenic culture. This supplies the intermediate used by Terrabacter in coculture. The complementary cultures, chemical time course and recipient isotope signal support sequential cross-feeding rather than merely co-occurring degradation.
Source Taxon: Microbacterium sp. BR1
@@ -644,7 +644,7 @@ Microbacterium 2-Aminopyrimidine Release
→ Terrabacter 2-Aminopyrimidine Assimilation
-
Terrabacter assimilation and degradation of the Microbacterium-derived 2-aminopyrimidine intermediate removes the dead-end product that accumulates in Microbacterium monoculture.
+
Microbacterium cleavage supplies sulfadiazine-derived 2-AP to Terrabacter, enabling recipient carbon assimilation. Terrabacter alone did not remove parent sulfadiazine; the coculture-specific recipient Raman shift and axenic 2-AP accumulation support this causal sequence.
@@ -689,7 +689,7 @@ Evidence
Terrabacter 2-Aminopyrimidine Assimilation
COMMENSALISM
- Terrabacter sp. 2APm3 consumes the 2-aminopyrimidine released from sulfadiazine by Microbacterium sp. BR1, assimilating 2-aminopyrimidine-derived carbon and nitrogen during biomass growth.
+ Terrabacter assimilates carbon from Microbacterium-released 2-AP in coculture. Its phenylalanine Raman peak shifted from about 1000 to 988 cm-1 with the pyrimidine-labeled substrate, supporting 13C incorporation; this signal does not independently establish 15N assimilation. Detectably labeled Terrabacter fractions were 42.8 +/- 1.8% on day 2 and 45.9 +/- 3.2% on day 4, so activity is heterogeneous and subthreshold activity is not excluded. Recipient cell counts recovered between days 2 and 4 after an initial decline, not uninterrupted growth of both partners.
Source Taxon: Microbacterium sp. BR1
@@ -728,7 +728,7 @@ Terrabacter 2-Aminopyrimidine Assimilation
→ Coculture Sulfadiazine Degradation
-
Terrabacter utilization of 2-aminopyrimidine allows the coculture to degrade labeled sulfadiazine without the 2-aminopyrimidine accumulation seen in Microbacterium monoculture.
+
Terrabacter utilization removes the 2-AP intermediate that persists in Microbacterium axenic cultures, allowing the coculture endpoint to lack detectable 2-AP. This complements parent transformation but does not accelerate it: parent sulfadiazine disappeared by day 2 in Microbacterium alone and day 4 in coculture.
@@ -773,7 +773,7 @@ Evidence
Coculture Sulfadiazine Degradation
COMMENSALISM
- The Microbacterium-Terrabacter coculture degrades sulfadiazine and prevents detectable 2-aminopyrimidine accumulation by coupling Microbacterium sulfadiazine cleavage to Terrabacter 2-aminopyrimidine degradation.
+ With 1 mM supplied sulfadiazine, the coculture showed complete parent disappearance by day 4 and no detectable 2-AP at sampled days 0, 2 and 4. Microbacterium alone removed parent by day 2 while accumulating about 1 mM 2-AP; Terrabacter alone did not remove parent. Preserve the positive complementary degradation endpoint without claiming faster parent removal, continuous absence of any intermediate pool, or quantitative mineralization from a closed carbon balance.
@@ -845,7 +845,7 @@ Evidence
- Knowledge gaps & discussions (1)
+ Knowledge gaps & discussions (2)
@@ -880,6 +880,21 @@
+
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ What nitrogen incorporation and donor benefit accompany the demonstrated carbon cross-feeding?
+
+
Retain all three nodes and both supported arrows. Dual-labeled substrate does not make the observed phenylalanine Raman shift an independent 15N readout. Partial recipient labeling, initial population decline and subsequent Terrabacter recovery bound the growth claim. Parent disappearance is slower in coculture than BR1 alone, whereas 2-AP removal is the complementary benefit. The paper's proposed donor protection from 2-AP is not a selectively tested feedback mechanism, so no new return arrow is added. Complete primary main text and Table 1 read; supporting information/raw spectra not audited. #1611 repairs graph interpretation; #1612 retains axenic-label wording and culture-stock/medium follow-up. Preserve the prior #1196 coculture-label fix and #1195 Brunner MSM discussion.
+
+
Attaches to: ecological_interactions#Microbacterium 2-Aminopyrimidine Release, ecological_interactions#Terrabacter 2-Aminopyrimidine Assimilation, ecological_interactions#Coculture Sulfadiazine Degradation
+
+
+
+
diff --git a/history/records/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture/2026-10-07T015429Z-codex-b0f586.yaml b/history/records/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture/2026-10-07T015429Z-codex-b0f586.yaml
new file mode 100644
index 000000000..2bb2dcdfc
--- /dev/null
+++ b/history/records/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture/2026-10-07T015429Z-codex-b0f586.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml
+ slug: Methylomicrobium_Chlorella_Methane_Sequestration_Coculture
+session:
+ id: 2026-10-07T015429Z-codex-b0f586
+ timestamp: '2026-10-07T01:54:29Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1608
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Preserve demonstrated mutual growth enhancement while bounding the exchange mediator.;
+ Assign positive biomass carbon to whole-coculture scope, not pairwise carbon transfer.;
+ Retain culture pH with a qualified causal arrow, without colonization or cross-system
+ model claims.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
diff --git a/history/records/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture/2026-10-07T015429Z-codex-7993e9.yaml b/history/records/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture/2026-10-07T015429Z-codex-7993e9.yaml
new file mode 100644
index 000000000..bfda8c656
--- /dev/null
+++ b/history/records/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture/2026-10-07T015429Z-codex-7993e9.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml
+ slug: Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture
+session:
+ id: 2026-10-07T015429Z-codex-7993e9
+ timestamp: '2026-10-07T01:54:29Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1609
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Preserve physiological photosynthetic oxygen support without equating it to reciprocal
+ fitness.; Preserve bounded respiratory CO2 recycling while identifying estimated rather
+ than directly measured rates.; Retain positive whole-coculture gas-to-biomass conversion
+ with canonical participants.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
diff --git a/history/records/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia/2026-10-07T015429Z-codex-2356b2.yaml b/history/records/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia/2026-10-07T015429Z-codex-2356b2.yaml
new file mode 100644
index 000000000..8b21ffd2c
--- /dev/null
+++ b/history/records/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia/2026-10-07T015429Z-codex-2356b2.yaml
@@ -0,0 +1,25 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml
+ slug: Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia
+session:
+ id: 2026-10-07T015429Z-codex-2356b2
+ timestamp: '2026-10-07T01:54:29Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1610
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain a justified empty ecological graph for two processed biomass panels; document
+ the unresolved living-community mechanisms.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
diff --git a/history/records/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture/2026-10-07T015430Z-codex-ddbd4a.yaml b/history/records/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture/2026-10-07T015430Z-codex-ddbd4a.yaml
new file mode 100644
index 000000000..4af8628a0
--- /dev/null
+++ b/history/records/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture/2026-10-07T015430Z-codex-ddbd4a.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml
+ slug: Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture
+session:
+ id: 2026-10-07T015430Z-codex-ddbd4a
+ timestamp: '2026-10-07T01:54:30Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1611
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Preserve donor intermediate release and make its enabling arrow explicitly upstream
+ causal.; Retain recipient carbon assimilation and heterogeneous activity without independent
+ nitrogen claims.; Preserve complementary degradation and sampled nondetection, not faster
+ parent removal or complete mineralization.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
diff --git a/kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml b/kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml
index 3466983d4..951831e7b 100644
--- a/kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml
+++ b/kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml
@@ -120,10 +120,10 @@ taxonomy:
explanation: Supports the algal partner as a mutualistic member of the coculture.
ecological_interactions:
- name: Methane Removal and Mutualistic Growth
- description: >
- M. alcaliphilum 20Z and Chlorella sp. HS2 form a mutualistic coculture in
- which methane removal and growth of both organisms increase relative to the
- tested controls.
+ description: The M. alcaliphilum 20Z/Chlorella sp. HS2 coculture enhanced growth of both members under saline
+ conditions (>3.0%), supporting the authors' mutualistic-growth interpretation. Increased methane provision in
+ enclosed bottles led to saturated methane removal. Positive growth and removal are retained, without assigning
+ all benefits to measured reciprocal O2/CO2 transfer or implying obligatory dependence.
interaction_type: MUTUALISM
scope: PAIRWISE
source_taxon:
@@ -160,37 +160,27 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Methane and Carbon Dioxide Mitigation
- description: The mutualistic O2/CO2 exchange that increases growth of both
- partners under methane feeds the downstream methane removal and biomass
- carbon-sequestration phenotype.
+ description: PARTIAL - enhanced partner growth and methane utilization contribute to greater whole-coculture
+ biomass carbon sequestration. The exact-pair abstract supports these positive outcomes but does not isolate
+ reciprocal gas exchange as their sole mediator; it explicitly implicates factors beyond gaseous exchange.
evidence:
- reference: doi:10.1016/j.biortech.2024.130607
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: Increased CH4 removal and growth of both microbes were observed in co-cultures.
- explanation: Supports methane removal and mutualistic growth enhancement in coculture.
+ snippet: Co-culture significantly enhanced the growth of both microbes
+ explanation: Supports positive growth of both members and the mutualistic-growth interpretation, not an identified
+ exchange mechanism.
- reference: doi:10.1016/j.biortech.2024.130607
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: Co-culture significantly enhanced the growth of both microbes
- explanation: Supports growth enhancement of both members in the exact coculture.
+ snippet: increased methane provision in enclosed serum bottles led to saturated methane removal
+ explanation: Supports methane removal in the tested laboratory bottles, not field wastewater performance.
- name: Methane and Carbon Dioxide Mitigation
- description: >
- The methanotroph-microalga consortium was proposed as a halotolerant
- platform for simultaneous methane and carbon dioxide mitigation, with
- methane-fed cocultures increasing carbon sequestered in biomass.
- interaction_type: CROSS_FEEDING
- scope: PAIRWISE
- source_taxon:
- preferred_term: Methylomicrobium alcaliphilum 20Z
- term:
- id: NCBITaxon:1091494
- label: Methylotuvimicrobium alcaliphilum 20Z
- target_taxon:
- preferred_term: Chlorella sp. HS2
- term:
- id: NCBITaxon:2675547
- label: Chlorella sp. HS2
+ description: Methane-fed cocultures showed nearly an order of magnitude more carbon sequestered in biomass in
+ the reported analyses. This is a whole-culture carbon endpoint and supports the proposed halotolerant CH4/CO2
+ mitigation platform, not a quantified methanotroph-to-Chlorella carbon flux or demonstrated operation on real
+ wastewater.
+ scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: methane
term:
@@ -218,38 +208,28 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: remediate in situ CH4 and CO2
- explanation: Supports the methane and carbon dioxide mitigation function of the consortium.
+ explanation: The abstract proposes a mitigation platform; this wording alone does not establish field wastewater
+ performance or reciprocal carbon transfer.
- reference: doi:10.1016/j.biortech.2024.130607
supports: SUPPORT
evidence_source: IN_VITRO
snippet: nearly an order of magnitude increase in the amount of carbon sequestered in biomass
- explanation: Supports enhanced biomass carbon sequestration in methane-fed cocultures.
- - reference: doi:10.1016/j.mex.2022.101652
- supports: PARTIAL
- evidence_source: COMPUTATIONAL
- snippet: Explicitly models the exchange of in situ produced O2 and CO2 within
- the coculture
- explanation: Badr/He/Wang 2022 MethodsX provides the kinetic-model implementation
- that explicitly captures the in situ O2/CO2 exchange between methanotroph and
- photoautotroph - independent computational backing for the CO2/biomass dynamics
- curated here. Partial because the modeled M-P system is generic rather than
- the specific M. alcaliphilum 20Z + Chlorella HS2 pairing.
-- name: Saline Metabolic Coupling and pH Recovery
- description: >
- The coculture showed robust metabolic coupling under saline conditions and
- maintained culture pH suitable for methanotrophic growth.
- interaction_type: COLONIZATION_FACILITATION
- scope: PAIRWISE
- source_taxon:
- preferred_term: Chlorella sp. HS2
- term:
- id: NCBITaxon:2675547
- label: Chlorella sp. HS2
- target_taxon:
- preferred_term: Methylomicrobium alcaliphilum 20Z
+ explanation: Supports the positive whole-coculture biomass-carbon endpoint, not partner-resolved assimilation.
+ participating_taxa:
+ - preferred_term: Methylomicrobium alcaliphilum 20Z
term:
id: NCBITaxon:1091494
label: Methylotuvimicrobium alcaliphilum 20Z
+ - preferred_term: Chlorella sp. HS2
+ term:
+ id: NCBITaxon:2675547
+ label: Chlorella sp. HS2
+- name: Saline Metabolic Coupling and pH Recovery
+ description: Methane-fed saline cocultures maintained pH suitable for methanotrophic growth, alongside enhanced
+ growth and carbon sequestration. This culture-level observation supports a favorable chemical environment; it
+ does not establish colonization facilitation or selectively demonstrate that Chlorella-driven pH recovery causes
+ the growth benefit.
+ scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: biological process involved in interspecies interaction between organisms
term:
@@ -257,30 +237,29 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Methane and Carbon Dioxide Mitigation
- description: >
- Saline pH recovery and robust methanotroph-alga metabolic coupling sustain methane-fed coculture
- conditions that increase methane removal and biomass carbon sequestration.
+ description: HYPOTHESIZED - maintaining a suitable pH could sustain methanotrophic activity and thereby biomass
+ carbon sequestration. The available exact-pair abstract reports the association, not a selective pH perturbation
+ establishing its contribution independently of gas supply or other interactions.
evidence:
- reference: doi:10.1016/j.biortech.2024.130607
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: robust metabolic coupling between the two microbes
- explanation: Supports metabolic coupling as a mechanistic feature of the two-member system.
+ snippet: maintained a suitable cultural pH suitable for methanotrophic growth
+ explanation: Supports a culture-level pH observation, not an isolated causal pH intervention.
- reference: doi:10.1016/j.biortech.2024.130607
- supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: pH recovery above mild alkaline level was observed in co-cultures.
- explanation: Supports pH recovery as a coculture-level outcome.
- - reference: doi:10.20517/mrr.2023.70
supports: PARTIAL
- evidence_source: COMPUTATIONAL
- snippet: the metabolic interactions within the coculture, how they contribute to the enhanced growth observed in the coculture
- explanation: Badr/He/Wang 2024 use a generic methanotroph-photoautotroph (M-P)
- coculture as their model system and demonstrate via genome-scale modeling that the
- mutualistic N-exchange between methanotroph and cyanobacteria explains enhanced
- coculture growth - independent computational backing for "metabolic coupling between
- the two microbes" claimed here. Partial because the modeled M-P system is generic
- rather than the specific M. alcaliphilum 20Z + Chlorella HS2 pairing.
+ evidence_source: IN_VITRO
+ snippet: robust metabolic coupling between the two microbes
+ explanation: Retains the authors' interpretation while leaving exact mediators unresolved.
+ participating_taxa:
+ - preferred_term: Methylomicrobium alcaliphilum 20Z
+ term:
+ id: NCBITaxon:1091494
+ label: Methylotuvimicrobium alcaliphilum 20Z
+ - preferred_term: Chlorella sp. HS2
+ term:
+ id: NCBITaxon:2675547
+ label: Chlorella sp. HS2
environmental_factors:
- name: Salinity
value: above 3.0%
@@ -428,3 +407,28 @@ related_ingredients:
snippet: A halotolerant consortium between microalgae and methanotrophic bacteria could effectively
remediate in situ CH4 and CO2, particularly using saline wastewater sources
explanation: Names CO2 (alongside CH4) as a greenhouse gas the consortium remediates.
+discussions:
+- discussion_id: chlorella_exact_pair_mediators_and_model_scope
+ prompt: Which processes mediate the positive growth, pH and biomass-carbon effects in the exact 20Z/HS2 pair?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Methane Removal and Mutualistic Growth
+ - ecological_interactions#Methane and Carbon Dioxide Mitigation
+ - ecological_interactions#Saline Metabolic Coupling and pH Recovery
+ rationale: 'Preserve mutual growth enhancement, methane removal and biomass carbon sequestration. The exact-pair
+ primary abstract was read; publisher full text returned 403, so no absence-of-controls claim is made. Both cited
+ model papers (doi:10.1016/j.mex.2022.101652 and doi:10.20517/mrr.2023.70) actually study M. buryatense 5GB1/A.
+ platensis. Their complete main texts support kinetic/computational context, not independent exact-pair evidence.
+ DynamiCom nitrogen exchange is a prediction awaiting experimental validation, not an HS2 mechanism. Remove those
+ graph evidence items without inventing new nitrogen-exchange structure. #1608 addresses graph scope.'
+ posed_by: codex
+ posed_date: '2026-10-07'
+curation_history:
+- timestamp: '2026-10-07T01:54:28Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Preserve demonstrated mutual growth enhancement while bounding the exchange mediator.; Assign positive
+ biomass carbon to whole-coculture scope, not pairwise carbon transfer.; Retain culture pH with a qualified causal
+ arrow, without colonization or cross-system model claims. Issue #1608; reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml b/kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml
index 3535bb799..e43aced1b 100644
--- a/kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml
+++ b/kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml
@@ -121,10 +121,10 @@ taxonomy:
characterization study.
ecological_interactions:
- name: Photosynthetic O2 Support for Methane Oxidation
- description: Synechococcus PCC 7002 performs oxygenic photosynthesis and supplies O2 that supports
- aerobic methane oxidation by M. alcaliphilum 20z, enabling coculture growth without feeding
- external CH4/O2 mixtures.
- interaction_type: MUTUALISM
+ description: Synechococcus PCC 7002 supplies photosynthetic O2 supporting aerobic methane oxidation by M. alcaliphilum
+ 20z. The 2017 continuous synthetic-natural-gas process reached steady state under coupled light and O2 limitations,
+ with an O2-depleted reactor and no fed CH4/O2 mixture. Oxygen depletion does not imply anaerobic methane oxidation;
+ directed support alone does not establish reciprocal fitness benefit.
scope: PAIRWISE
source_taxon:
preferred_term: Synechococcus PCC 7002
@@ -156,9 +156,9 @@ ecological_interactions:
label: methane metabolic process
downstream:
- target: Methane and Carbon Dioxide Conversion to Biomass
- description: >
- Photosynthetic O2 production supports aerobic methane oxidation, allowing
- the coculture to convert methane and carbon dioxide into biomass.
+ description: Photosynthetic oxygen production supports aerobic methane oxidation and thereby positive whole-coculture
+ conversion of gas carbon into biomass. This physiological coupling is retained without requiring an independently
+ measured respiratory-CO2 transfer rate or reciprocal growth enhancement.
evidence:
- reference: PMID:28092828
supports: SUPPORT
@@ -169,11 +169,13 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: does not require CH4/O2 mixtures to be fed
- explanation: Supports in situ O2 provisioning by the cyanobacterium during methane-fed
- cocultivation.
+ explanation: Supports in situ O2 provisioning by the cyanobacterium during methane-fed cocultivation.
- name: CO2 Utilization by Cyanobacterial Partner
- description: CO2 from the supplied gas stream and methanotroph respiration is available to the
- cyanobacterial partner, allowing simultaneous methane and carbon dioxide utilization into biomass.
+ description: PARTIAL - the cyanobacterium uses inorganic carbon from the supplied gas/medium and can use CO2 released
+ by methanotroph respiration. The 20ZR/PCC7002 follow-up supports this exchange interpretation using an experimental-computational
+ mass balance, not independently measured partner-specific CO2 flux. The respiratory contribution is inferred
+ from methane uptake and growth stoichiometry; it is not separately isotope-resolved from supplied inorganic
+ carbon.
interaction_type: CROSS_FEEDING
scope: PAIRWISE
source_taxon:
@@ -202,28 +204,28 @@ ecological_interactions:
label: photosynthesis
downstream:
- target: Methane and Carbon Dioxide Conversion to Biomass
- description: >
- Cyanobacterial CO2 assimilation closes the reciprocal O2/CO2 exchange that
- supports simultaneous gas conversion by the two-member coculture.
+ description: PARTIAL - cyanobacterial carbon assimilation contributes to coculture biomass, with respiratory
+ CO2 recycling supported by the follow-up mass-balance interpretation. The individual rates are stoichiometric
+ estimates, so this arrow does not establish the exact recycled fraction or mutually enhanced growth.
evidence:
- reference: PMID:28092828
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
- snippet: simultaneous utilization of methane and carbon dioxide
- explanation: Supports coupled use of methane by the methanotroph and CO2 by the
- photoautotroph.
+ snippet: robust growth on diverse gas mixtures
+ explanation: Supports positive gas-fed coculture growth, not the partition of cyanobacterial carbon between
+ feed and methanotroph respiration.
- reference: PMID:33064298
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
snippet: individual consumption and production rates of O2 and CO2
- explanation: Supports O2 and CO2 fluxes as measured interaction variables in the same
- species-pair coculture platform.
+ explanation: The 20ZR/PCC7002 follow-up estimates individual gas rates from measured overall changes, TIC and
+ growth stoichiometry (equations 3-9). Flow cytometry comparison validates biomass estimates, not an independent
+ direct measurement of partner gas exchange.
- name: Methane and Carbon Dioxide Conversion to Biomass
- description: >
- Coupled methanotrophic methane oxidation and cyanobacterial photosynthesis
- let the two-member coculture convert methane and carbon dioxide from gas
- feedstocks into microbial biomass.
- interaction_type: MUTUALISM
+ description: The 20z/PCC7002 coculture converts methane and carbon dioxide from tested gas feedstocks into microbial
+ biomass. This positive system endpoint is distinct from a demonstrated increase in each partner's fitness. The
+ quantitative follow-up uses the 20ZR derivative with PCC7002; its mass-balance estimates should not be treated
+ as direct exchange measurements in the original continuous reactor.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: methane
@@ -253,6 +255,15 @@ ecological_interactions:
evidence_source: IN_VITRO
snippet: converts greenhouse gasses, CH4 and CO2, into microbial biomass
explanation: Supports conversion of methane and carbon dioxide into biomass by the coculture.
+ participating_taxa:
+ - preferred_term: Methylomicrobium alcaliphilum 20z
+ term:
+ id: NCBITaxon:1091494
+ label: Methylotuvimicrobium alcaliphilum 20Z
+ - preferred_term: Synechococcus PCC 7002
+ term:
+ id: NCBITaxon:32049
+ label: Picosynechococcus sp. PCC 7002
environmental_factors:
- name: Gas feedstock composition
value: diverse gas mixtures ranging from biogas to natural-gas feedstock analogs
@@ -394,3 +405,29 @@ rare_earth_elements_present: []
metal_relevance: NOT_APPLICABLE
metal_notes: No metal or rare earth element processing role is curated for this gas-feedstock
coculture.
+discussions:
+- discussion_id: gas_feedstock_respired_carbon_and_rate_estimation
+ prompt: How much cyanobacterial carbon derives from methanotroph respiration under each gas regime?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Photosynthetic O2 Support for Methane Oxidation
+ - ecological_interactions#CO2 Utilization by Cyanobacterial Partner
+ - ecological_interactions#Methane and Carbon Dioxide Conversion to Biomass
+ rationale: 'Keep positive photosynthetic O2 support and gas-to-biomass conversion. The 2017 exact-pair abstract
+ was read; PNNL PDF download returned 403, so its full controls are not certified. Public PMID:33064298 accepted
+ manuscript and included supplement text were read; equation pages 10-11 visually checked. Organism-specific
+ O2/CO2 rates derive from total gas changes, TIC and growth coefficients, with dissolved O2 neglected. Flow cytometry/OD
+ checks support biomass estimation, not independent gas-flux validation. Its saltwater 20ZR/PCC7002 pair differs
+ from the separate M. capsulatus/C. sorokiniana pair; the latter''s oxygen-limited inoculum response must not
+ be imported here. #1609 repairs graph wording; #1612 keeps non-graph measurement/protocol claims open.'
+ posed_by: codex
+ posed_date: '2026-10-07'
+curation_history:
+- timestamp: '2026-10-07T01:54:28Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Preserve physiological photosynthetic oxygen support without equating it to reciprocal fitness.; Preserve
+ bounded respiratory CO2 recycling while identifying estimated rather than directly measured rates.; Retain positive
+ whole-coculture gas-to-biomass conversion with canonical participants. Issue #1609; reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml b/kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml
index 175ea5078..e7d5d56a9 100644
--- a/kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml
+++ b/kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml
@@ -206,7 +206,36 @@ curation_history:
- timestamp: '2026-09-20T07:03:46Z'
curator: claude
action: CREATE_MICROALGAE_CYANOBACTERIA_BIOACTIVE_PEPTIDE_CONSORTIA
- changes: Created the Microalgae-Cyanobacteria Bioactive Peptide Consortia record from PMID:42188319 with C1/C2 biomass membership,
- controlled photobioreactor cultivation, Alcalase hydrolysis endpoints, and ProteomeXchange/PRIDE dataset accessions PXD077201
- and PXD077149.
+ changes: Created the Microalgae-Cyanobacteria Bioactive Peptide Consortia record from PMID:42188319 with C1/C2
+ biomass membership, controlled photobioreactor cultivation, Alcalase hydrolysis endpoints, and ProteomeXchange/PRIDE
+ dataset accessions PXD077201 and PXD077149.
llm_assisted: true
+- timestamp: '2026-10-07T01:54:29Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain a justified empty ecological graph for two processed biomass panels; document the unresolved
+ living-community mechanisms. Issue #1610; reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml'
+ llm_assisted: true
+discussions:
+- discussion_id: peptide_panel_live_interactions_unresolved
+ prompt: Which living-community interactions, if any, affect biomass production in C1 or C2?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to: []
+ rationale: 'The primary paper PMID:42188319 studies two separately produced, lyophilized biomasses: C1 is Chlorella/Arthrospira;
+ C2 is Kamptonema/Nannochloropsis/Tetraselmis/Chlorella. Preserve this panel, not a five-member coculture. Protein
+ extraction, commercial Alcalase hydrolysis and antioxidant assays are processing steps, not demonstrated ecological
+ cross-feeding. In silico peptides are predictions, not measured exchanged products. Positive hydrolysate activity
+ remains, including assay-dependent effects; phenolic compounds also contribute, and C1 ABTS activity decreases
+ after hydrolysis despite increased ORAC. The empty graph is justified by this source, not evidence that no interaction
+ exists. Complete main text, captions and embedded tables read; supplements, raw proteomics and cultivation patent
+ not audited. #1610 documents this review without adding unsupported nodes or arrows; prior #952/#953 fixes remain
+ intact.'
+ posed_by: codex
+ posed_date: '2026-10-07'
+ evidence:
+ - reference: PMID:42188319
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: were further hydrolyzed with Alcalase
+ explanation: Supports post-extraction enzymatic treatment rather than a living microbial transfer mechanism.
diff --git a/kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml b/kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml
index d2fc3f0e0..9dd4767d1 100644
--- a/kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml
+++ b/kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml
@@ -98,10 +98,10 @@ taxonomy:
explanation: Supports Terrabacter as the member that assimilates sulfadiazine-derived 2-aminopyrimidine.
ecological_interactions:
- name: Microbacterium 2-Aminopyrimidine Release
- description: >-
- Microbacterium sp. BR1 cleaves sulfadiazine to release the dead-end
- intermediate 2-aminopyrimidine, making the intermediate available for
- degradation by Terrabacter.
+ description: Microbacterium sp. BR1 transforms sulfadiazine and releases 2-aminopyrimidine (2-AP), which accumulates
+ in its axenic culture. This supplies the intermediate used by Terrabacter in coculture. The complementary cultures,
+ chemical time course and recipient isotope signal support sequential cross-feeding rather than merely co-occurring
+ degradation.
interaction_type: CROSS_FEEDING
scope: PAIRWISE
source_taxon:
@@ -126,10 +126,9 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Terrabacter 2-Aminopyrimidine Assimilation
- description: >-
- Terrabacter assimilation and degradation of the Microbacterium-derived
- 2-aminopyrimidine intermediate removes the dead-end product that
- accumulates in Microbacterium monoculture.
+ description: Microbacterium cleavage supplies sulfadiazine-derived 2-AP to Terrabacter, enabling recipient carbon
+ assimilation. Terrabacter alone did not remove parent sulfadiazine; the coculture-specific recipient Raman
+ shift and axenic 2-AP accumulation support this causal sequence.
evidence:
- reference: PMID:42598292
supports: SUPPORT
@@ -142,10 +141,12 @@ ecological_interactions:
snippet: Microbacterium led to the entire degradation of sulfadiazine with concomitant accumulation of 2-AP
explanation: Supports 2-aminopyrimidine accumulation as a Microbacterium monoculture dead-end product.
- name: Terrabacter 2-Aminopyrimidine Assimilation
- description: >-
- Terrabacter sp. 2APm3 consumes the 2-aminopyrimidine released from
- sulfadiazine by Microbacterium sp. BR1, assimilating
- 2-aminopyrimidine-derived carbon and nitrogen during biomass growth.
+ description: Terrabacter assimilates carbon from Microbacterium-released 2-AP in coculture. Its phenylalanine
+ Raman peak shifted from about 1000 to 988 cm-1 with the pyrimidine-labeled substrate, supporting 13C incorporation;
+ this signal does not independently establish 15N assimilation. Detectably labeled Terrabacter fractions were
+ 42.8 +/- 1.8% on day 2 and 45.9 +/- 3.2% on day 4, so activity is heterogeneous and subthreshold activity is
+ not excluded. Recipient cell counts recovered between days 2 and 4 after an initial decline, not uninterrupted
+ growth of both partners.
interaction_type: COMMENSALISM
scope: PAIRWISE
source_taxon:
@@ -170,10 +171,9 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Coculture Sulfadiazine Degradation
- description: >-
- Terrabacter utilization of 2-aminopyrimidine allows the coculture to
- degrade labeled sulfadiazine without the 2-aminopyrimidine accumulation
- seen in Microbacterium monoculture.
+ description: 'Terrabacter utilization removes the 2-AP intermediate that persists in Microbacterium axenic cultures,
+ allowing the coculture endpoint to lack detectable 2-AP. This complements parent transformation but does not
+ accelerate it: parent sulfadiazine disappeared by day 2 in Microbacterium alone and day 4 in coculture.'
evidence:
- reference: PMID:42598292
supports: SUPPORT
@@ -184,12 +184,14 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: Terrabacter assimilated carbon derived from 13C,15N-labeled 2-AP
- explanation: Supports 2-aminopyrimidine assimilation by Terrabacter in the coculture.
+ explanation: Supports carbon incorporation from the dual-labeled substrate, not a separate nitrogen-incorporation
+ measurement or activity of every recipient cell.
- name: Coculture Sulfadiazine Degradation
- description: >-
- The Microbacterium-Terrabacter coculture degrades sulfadiazine and prevents
- detectable 2-aminopyrimidine accumulation by coupling Microbacterium
- sulfadiazine cleavage to Terrabacter 2-aminopyrimidine degradation.
+ description: With 1 mM supplied sulfadiazine, the coculture showed complete parent disappearance by day 4 and
+ no detectable 2-AP at sampled days 0, 2 and 4. Microbacterium alone removed parent by day 2 while accumulating
+ about 1 mM 2-AP; Terrabacter alone did not remove parent. Preserve the positive complementary degradation endpoint
+ without claiming faster parent removal, continuous absence of any intermediate pool, or quantitative mineralization
+ from a closed carbon balance.
interaction_type: COMMENSALISM
scope: COMMUNITY_LEVEL
participating_taxa:
@@ -220,7 +222,8 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: No traces of 2-AP were detected in cocultures at all sampling times
- explanation: Supports the absence of 2-aminopyrimidine buildup in coculture.
+ explanation: Supports nondetection at sampled times, not continuous zero intermediate concentration or a measured
+ carbon-mineralization balance.
environmental_factors:
- name: sulfadiazine isotope-tracing substrate
value: 13C,15N-diazine-labeled sulfadiazine
@@ -270,29 +273,41 @@ external_resources:
explanation: Identifies the primary article for this sulfadiazine-degrading synthetic ecosystem.
discussions:
- discussion_id: exact-brunner-msm-vitamin-composition
- prompt: >-
- Which Brunner MSM salts, vitamins, and supplement concentrations were
- present in the sulfadiazine isotope-tracing coculture medium?
+ prompt: Which Brunner MSM salts, vitamins, and supplement concentrations were present in the sulfadiazine isotope-tracing
+ coculture medium?
kind: KNOWLEDGE_GAP
status: OPEN
attaches_to:
- growth_media#sulfadiazine isotope-tracing coculture medium
- rationale: >-
- The open article body identifies MSM Brunner plus vitamins and labeled
- sulfadiazine as the isotope-tracing coculture medium, but places full
- materials and methods details in supporting information.
+ rationale: The open article body identifies MSM Brunner plus vitamins and labeled sulfadiazine as the isotope-tracing
+ coculture medium, but places full materials and methods details in supporting information.
evidence:
- reference: PMID:42598292
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: >-
- Supplementary experimental procedures: synthesis of 13C,15N-labeled
- sulfadiazine
- explanation: >-
- Indicates that additional procedure details were separated into
- supporting information rather than fully reproduced in the article body.
+ snippet: 'Supplementary experimental procedures: synthesis of 13C,15N-labeled sulfadiazine'
+ explanation: Indicates that additional procedure details were separated into supporting information rather than
+ fully reproduced in the article body.
posed_by: codex
posed_date: '2026-09-28'
+- discussion_id: sulfadiazine_isotope_kinetics_and_donor_benefit
+ prompt: What nitrogen incorporation and donor benefit accompany the demonstrated carbon cross-feeding?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Microbacterium 2-Aminopyrimidine Release
+ - ecological_interactions#Terrabacter 2-Aminopyrimidine Assimilation
+ - ecological_interactions#Coculture Sulfadiazine Degradation
+ rationale: 'Retain all three nodes and both supported arrows. Dual-labeled substrate does not make the observed
+ phenylalanine Raman shift an independent 15N readout. Partial recipient labeling, initial population decline
+ and subsequent Terrabacter recovery bound the growth claim. Parent disappearance is slower in coculture than
+ BR1 alone, whereas 2-AP removal is the complementary benefit. The paper''s proposed donor protection from 2-AP
+ is not a selectively tested feedback mechanism, so no new return arrow is added. Complete primary main text
+ and Table 1 read; supporting information/raw spectra not audited. #1611 repairs graph interpretation; #1612
+ retains axenic-label wording and culture-stock/medium follow-up. Preserve the prior #1196 coculture-label fix
+ and #1195 Brunner MSM discussion.'
+ posed_by: codex
+ posed_date: '2026-10-07'
metal_relevance: NOT_APPLICABLE
metal_notes: >-
The Microbacterium-Terrabacter coculture degrades the sulfonamide antibiotic
@@ -301,8 +316,13 @@ curation_history:
- timestamp: '2026-09-28T10:00:01Z'
curator: codex
action: CREATE_RECORD
- changes: >-
- Created CommunityMech:000462 for the two-member Microbacterium sp. BR1 and
- Terrabacter sp. 2APm3 sulfadiazine-degrading coculture from PMID:42598292
- and DOI 10.1021/acs.estlett.6c00474.
+ changes: Created CommunityMech:000462 for the two-member Microbacterium sp. BR1 and Terrabacter sp. 2APm3 sulfadiazine-degrading
+ coculture from PMID:42598292 and DOI 10.1021/acs.estlett.6c00474.
+ llm_assisted: true
+- timestamp: '2026-10-07T01:54:29Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Preserve donor intermediate release and make its enabling arrow explicitly upstream causal.; Retain
+ recipient carbon assimilation and heterogeneous activity without independent nitrogen claims.; Preserve complementary
+ degradation and sampled nondetection, not faster parent removal or complete mineralization. Issue #1611; reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml'
llm_assisted: true
diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md
index a834b4fed..07f826bfc 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`.
+## Batch72: Gas Rates, Peptide Panels And Isotope Evidence
+
+[Decisions](decisions/20261007-four-records-batch72.yaml),
+[validation](validation-20261007-batch72.json) and
+[self-adversarial review](adversarial-review-20261007-batch72.yaml) account for
+all nine retained nodes and six arrows, plus a justified empty peptide graph.
+
+Positive mutual growth, photosynthetic oxygen support, biomass carbon and
+sulfadiazine cross-feeding remain. Whole-culture carbon is not partner flux;
+individual gas rates are stoichiometric estimates. Raman supports carbon
+incorporation, not independent nitrogen assimilation or activity of every cell.
+The two peptide biomasses and their processing assays do not establish a living
+ecological chain. Their empty graph is reviewed, not overlooked.
+
+Two exact-pair studies remain abstract-supported after full-text access failures.
+The quantitative follow-up manuscript, peptide and sulfadiazine main texts, and
+both cross-system modeling papers were read. Follow-up equation pages 10-11 were
+visually inspected; other figure pixels and separate supplements were not audited.
+All 17 retained graph excerpts match fresh primary text. All 920 caches and raw
+non-graph blocks remain unchanged, not recertified. Tasks #1608-#1611 await
+protected-main merge; metadata #1612 stays open afterward. No new structure or
+paid provider call. Self-review is not independent approval or corpus completion.
+
## Batch71: Methane Coculture Assay Boundaries
[Decisions](decisions/20261007-four-records-batch71.yaml),
diff --git a/reports/causal_graph_review/adversarial-review-20261007-batch72.yaml b/reports/causal_graph_review/adversarial-review-20261007-batch72.yaml
new file mode 100644
index 000000000..4fc92ec90
--- /dev/null
+++ b/reports/causal_graph_review/adversarial-review-20261007-batch72.yaml
@@ -0,0 +1,239 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 8b90f0da40d7c3efba946f8ffc2183dba193112c
+scope:
+- kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml
+- kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml
+- kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml
+- kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml
+decision_ledger: reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
+validation_report: reports/causal_graph_review/validation-20261007-batch72.json
+findings:
+- issue: 1608
+ severity: P2
+ status: addressed_in_this_change
+ finding: Chlorella whole-culture carbon/pH and cross-system model support.
+ disposition: Close only after protected-main merge.
+- issue: 1609
+ severity: P2
+ status: addressed_in_this_change
+ finding: Synechococcus inferred gas rates versus direct exchange and reciprocal fitness.
+ disposition: Close only after protected-main merge.
+- issue: 1610
+ severity: P3
+ status: addressed_in_this_change
+ finding: Missing review rationale for a justified empty peptide-panel graph, not a missing-edge defect.
+ disposition: Close only after protected-main merge.
+- issue: 1611
+ severity: P2
+ status: addressed_in_this_change
+ finding: Sulfadiazine carbon/nitrogen attribution, heterogeneous activity and degradation kinetics.
+ disposition: Close only after protected-main merge.
+- issue: 1612
+ severity: P2
+ status: unresolved_non_graph
+ finding: Gas-rate and protocol metadata, axenic isotope-label wording and culture-medium/stock provenance
+ remain unresolved.
+ disposition: Keep OPEN after graph review merge.
+adversarial_checks:
+- 'Read all four whole records and every original node/arrow, including the empty peptide graph. Baseline
+ preceded paper research. Seven primary sources: two exact-pair abstracts, three other exact-system main
+ texts and two modeling main texts. Quantification accepted manuscript included supplement text; equation
+ pages10-11 visually inspected. Other figure pixels, separate supplements and raw data not audited.'
+- Retain Chlorella mutual growth enhancement, methane removal and nearly order-of-magnitude biomass carbon.
+ Do not demote demonstrated positive mutual growth merely because its mediator is unresolved. Growth/removal-to-carbon
+ arrow remains PARTIAL, not wholly unsupported.
+- Chlorella biomass carbon and pH are culture-level endpoints, not measured partner carbon flux or colonization.
+ The pH-to-carbon arrow remains explicitly HYPOTHESIZED. Abstract scope does not establish absence of
+ selective controls in inaccessible full Methods.
+- Both models actually study M.buryatense5GB1/A.platensis, not a generic validated model of either reviewed20Z
+ pair. Remove their graph evidence but retain bounded discussion context. DynamiCom nitrogen exchange
+ is an unvalidated mechanism prediction and cannot establish Chlorella pH recovery. No new nitrogen-exchange
+ graph is minted.
+- Retain experimentally supported photosynthetic oxygen supply and gas-fed biomass conversion. An O2-depleted
+ reactor with no fedCH4/O2 mixture does not imply anaerobic methanotrophy. Directed benefit or net community
+ biomass does not by itself establish reciprocal fitness enhancement.
+- 'Read quantitative-follow-up equations3-9 and visually verify pages10-11: methane uptake and growth
+ stoichiometry estimate methanotroph biomass/O2/CO2, then measured overall gas/TIC changes give photoautotroph
+ rates. DissolvedO2 is neglected. Flow cytometry and OD comparisons validate biomass estimates, not independent
+ gas-flux measurements.'
+- Preserve20ZR/PCC7002 follow-up versus20z original continuous reactor. The separate M.capsulatus/C.sorokiniana
+ freshwater pair shows oxygen-limited inoculum response; the saltwater pair is interpreted as methane-mass-transfer-limited.
+ Do not import freshwater results or transfer its organisms into the canonical pair.
+- The peptide record is a panel of two separately produced lyophilized biomasses, not a five-member community.
+ Commercial Alcalase processing, chemical assays and in silico peptides do not justify ecological nodes
+ or workflow arrows. Preserve the empty graph, positive assay endpoints, C1/C2 membership, PRIDE identifiers
+ and prior flat-photobioreactor/extraction fixes.
+- 'Peptide activity is assay-dependent: C1 ABTS decreases after hydrolysis while ORAC increases, and phenolics
+ can contribute. Predicted peptides are not measured exchanged products. Absence of a supported graph
+ here is not evidence that no living interaction exists; discussion remains OPEN.'
+- Sulfadiazine primary supports causal donor release, recipient assimilation and complementary intermediate
+ removal, not mere correlation. Retain all3 nodes and both supported arrows. First arrow now states how
+ donor release enables recipient assimilation rather than restating its endpoint.
+- The dual-labeled substrate does not establish independent nitrogen incorporation. The primary explicitly
+ attributes the1000-to988cm-1 phenylalanine shift to13C, not15N. Retain42.8+/-1.8% and45.9+/-3.2% labeled
+ recipient fractions and allow below-threshold activity; do not make every cell active.
+- Preserve initial population decline and subsequent Terrabacter recovery rather than uninterrupted mutual
+ growth. Parent disappears byday2 inBR1 alone andday4 in coculture. The benefit is2-AP removal, not faster
+ parent loss. Nondetection is atdays0,2,4, not continuous absence or measured closed-carbon-balance mineralization.
+- Donor protection by intermediate scavenging is proposed, not selectively demonstrated feedback. No new
+ return arrow is added. Preserve prior dual-label coculture snippet1196 and BrunnerMSM discussion1195;
+ blanket axenic-label protocol and stock provenance remain metadata1612.
+- Guarded dry run matched all17 retained graph snippets to selected caches and fresh primary. New peptide
+ discussion excerpt separately checked against primary. Four append-only events and history artifacts;456
+ other records,920 caches and all non-graph raw blocks preserved. Canonical taxa are unchanged, not recertified.
+- Census adds one mixed/community-scope Chlorella record and its two existing taxa to the community-scope-only
+ denominator. This is not new taxonomy or equal causal credit. Synechococcus remains community-level;
+ the peptide graph remains empty. All44 baseline warnings preserved exactly; zero structural defects.
+- Actual schema,strict,terms,references,snippets,history, inventory,rank,network, repeat rendering, regressions
+ and lint outputs retained with digests. A new-test lambda assignment failed an exploratory lint check
+ and was replaced by a set comprehension; final lint and focused16-test run verify the corrected file.
+ Exact HTML descriptions parsed across456 pages, not browser screenshots. Postcommit docs-current is
+ a separate publication gate.
+- Dedup included all896 issue titles/bodies and ignored/hidden local search, with four matching prior
+ bodies read. Tasks1608-1611 remain OPEN until protected-main merge; metadata1612 remains OPEN afterward.
+ This exact-head self-review is COMMENT, not independent approval. Full corpus remains unfinished.
+verification:
+ combined_regressions: 648 passed in 211.20s (0:03:31)
+ new_regression_tests: 7
+ schema_strict_terms_history: Passed with actual outputs/digests
+ references: CLI Total checks counts reported issues, not executed checks. Cache MATCH is not scientific
+ entailment or provenance certification. All920 caches unchanged;17 retained graph excerpts and one
+ new discussion excerpt independently match fresh primary text after whitespace normalization. Two
+ exact-pair sources remain abstract-supported after403 responses. Metadata1612 remains OPEN. Broader
+ cache limitations persist.
+ snippet_counts_by_record:
+ kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml:
+ MATCH: 22
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:
+ MATCH: 23
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml:
+ MATCH: 14
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml:
+ MATCH: 15
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ primary_graph_snippet_proof:
+ primary_matched_graph_snippets: 17
+ whitespace_only_matches: 17
+ primary_matched_new_discussion_snippets: 1
+ complete_primary_main_texts: 5
+ abstract_only_sources: 2
+ paid_submissions: 0
+ new_nodes_or_arrows: 0
+ justified_empty_graphs: 1
+ included_followup_supplement_text_read: true
+ separate_supplements_inspected: false
+ visually_inspected_equation_pdf_pages:
+ - 10
+ - 11
+ other_original_figure_pixels_inspected: false
+ network:
+ existing_findings_preserved: 44
+ added_findings: {}
+ removed_findings: {}
+ interpretation: All44 baseline warnings preserved exactly. Explicit whole-coculture participants do
+ not assert member-specific causal contributions. No taxonomy or auditor-rule changes.
+ black_ruff_diff: passed
+ tested_file_sha256:
+ reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml: f2fb00dfb79b4fbe7e95196d9d5c21f40b52956cd1bce051c8165e26e04a362d
+ tests/test_causal_review_batch72.py: 9009b168fe74c41ed433fc8fec6c33b785158dca51e1cd35e9b428d12eb954ae
+ tests/test_participating_taxa.py: 91577fc41f8296be06ac18ab59e59c1325e0f473492d4f8c90820a7f461495a6
+ kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml: a58d8ac4603390f7322d606e5aacc0002d3240b03d47b5786e994da2c5412cc9
+ kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml: e5dfb319c4ad66e288910657f76423b4a083e73f6761bbaeecd1b0c4e1b4afcf
+ kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml: 13f107e9c60dafb1f45527dc041ea9c9d1ddb9f72642a368c771a87293d045fa
+ kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml: 6b7afe887f8b6dd052a4fae909df27de25e0ee34ad383950c4205bad8548adf6
+ reports/causal_graph_review/README.md: 217be0f098750ad762f575920e0e51e1aaadf8faff4a8dd0236f8a487506c24c
+ unchanged_caches: 920
+ edison:
+ required_for_this_repair: false
+ provider_submissions: 0
+ credits_spent: 0
+ rationale: Existing structure repair only; earlier deferred extension approvals unchanged.
+ post_commit_docs_current: Separate publication gate, not asserted before commit.
+participant_census:
+ measurements:
+ baseline:
+ records: 460
+ with_community_level: 392
+ mixed: 124
+ community_level_only: 268
+ taxa: 1509
+ credited_solely_by_the_rule: 1240
+ current:
+ records: 460
+ with_community_level: 393
+ mixed: 125
+ community_level_only: 268
+ taxa: 1511
+ credited_solely_by_the_rule: 1240
+ delta:
+ records: 0
+ with_community_level: 1
+ mixed: 1
+ community_level_only: 0
+ taxa: 2
+ credited_solely_by_the_rule: 0
+ interpretation: 'Chlorella carbon and pH endpoints now community-level alongside the mutualistic-growth
+ pairwise node, adding one mixed-scope record. The survey taxa denominator counts only records with
+ community-level nodes: two existing members enter that denominator, not new taxonomy. Both retain
+ pairwise links, so solely-rule count is unchanged. Synechococcus biomass remains community-level.
+ Peptide graph stays empty. No taxonomy or auditor-rule change.'
+corpus:
+ records: 460
+ nodes: 1447
+ edges: 624
+ review_status_counts:
+ needs_research: 24
+ pending: 204
+ reviewed: 232
+limitations:
+- All9 original nodes and6 arrows retained with bounded evidence and scope. One existing empty graph independently
+ reviewed and preserved. No new structure or provider submissions.
+- Exact Chlorella/20Z and original20z/PCC7002 papers are primary-abstract-supported; publisher and PNNL
+ full text respectively returned403. This does not prove absent controls. Search highlights were leads,
+ not additional graph evidence.
+- Complete primary main texts/captions and embedded tables read for peptides, sulfadiazine and both modeling
+ papers. Public quantitative-follow-up accepted manuscript main text/tables/captions and included supplement
+ text read; equation pages10-11 visually checked. Other figure pixels, separate supplements and raw data
+ not audited.
+- Both modeling studies concern M.buryatense5GB1/A.platensis, not either reviewed20Z pair. Their nitrogen-exchange
+ predictions are contextual hypotheses, removed from direct graph evidence. Positive Chlorella mutual
+ growth, methane removal and whole-biomass carbon are preserved.
+- Photosynthetic O2 support and positive gas conversion remain. Individual gas fluxes are inferred from
+ overall gas/TIC measurements and growth coefficients; flow cytometry supports biomass estimation, not
+ independent gas-flux validation. Preserve20ZR derivative and separate freshwater pair.
+- Peptide C1/C2 are separate lyophilized biomass panels; commercial Alcalase treatment and predicted peptides
+ do not establish a living ecological chain. Empty graph is justified by this source, not a universal
+ no-interaction claim.
+- Sulfadiazine donor-to-recipient cross-feeding remains supported. Raman supports13C incorporation, not
+ independent15N assimilation. Preserve heterogeneous activity and sampled intermediate nondetection;
+ parent disappears faster in BR1 alone. No closed carbon-balance mineralization or selective donor-protection
+ test asserted.
+- All920 caches and raw non-graph blocks unchanged, not recertified. Canonical taxa unchanged. Non-graph
+ gas-rate/protocol, axenic isotope-label and medium/stock follow-up1612 remains OPEN; prior952/953/1195/1196
+ fixes preserved.
+- Dedup covered896 all-state issue titles/bodies and ignored/hidden-inclusive local search with40 matching
+ files. Four matching issue bodies952,953,1195,1196 read. No exhaustive PR-comment or local historical
+ report audit claimed.
+- Self-adversarial review is not independent approval. Tasks1608-1611 remain OPEN until protected-main
+ merge. Reviewed status is bounded existing-graph review, not complete corpus or whole-record certification.
diff --git a/reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml b/reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
new file mode 100644
index 000000000..57af1241e
--- /dev/null
+++ b/reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
@@ -0,0 +1,399 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 8b90f0da40d7c3efba946f8ffc2183dba193112c
+baseline_commit: 8b90f0da40d7c3efba946f8ffc2183dba193112c
+base_tree: daa7d346675decaf8771862b02cb7918782130d9
+pre_source_baseline_sha256: e71b1ae9433ad87bd81a0979098ee7b6cc5ead2a16aaccc5a90e662d1becaf06
+issues:
+- 1608
+- 1609
+- 1610
+- 1611
+unresolved_non_graph_issues:
+- 1612
+unresolved_research_issues: []
+issue_deduplication:
+ all_state_issue_titles_and_bodies: 896
+ ignored_hidden_local_search: true
+ matching_local_files: 40
+ matching_issues:
+ - 952
+ - 953
+ - 1195
+ - 1196
+reference_cache_original_hashes:
+ references_cache/doi_10.1016_j.mex.2022.101652.md: 901d39e97eb9f907538ecde1dbae9cc10947e6764fc3823dc6c959739cec2d29
+ references_cache/doi_10.1016_j.biortech.2024.130607.md: e27139879fdd57513045696cb6c840b50f6c761650a0c446338de0ba09d81c4f
+ references_cache/PMID_42598292.txt: 605b8f96adef76ce2dec57c51b11e95c78b50afaa1380b21777027a92ebc4699
+ references_cache/PMID_42188319.supplement.md: 21c8152709413190e28e120383f37b4ef869f57abc819253a7594417c5d99df2
+ references_cache/PMID_28092828.md: 97f8ab3a882f0cf010d3c9577791ad66d0f8f10a54795f2a3b42b5ea0c2ee0d2
+ references_cache/PMID_42188319.txt: f67300fc699806cb36d28d52c820f29c8e49cd473d9cd05a8222fe47863c64b2
+ references_cache/doi_10.20517_mrr.2023.70.md: 0ebb108324691d6349f02a6861359b83e6befb0e7ddfcc03a834f3da0d5455ff
+ references_cache/PMID_33064298.md: 63b5571a790c5270231eab6ee0f2e0a8fe34658d1b0031ef6f72c6744c78a7a0
+primary_artifacts:
+ /private/tmp/communitymech-batch72/chlorella-metadata.json: 1841e9c626ce9eb23405e0fe5d92de8995df3fa56d08be40cf053588731fa33d
+ /private/tmp/communitymech-batch72/chlorella-primary.txt: d7aa52fb4aeb95960b1600d0d67a47a540c976b8fb398d19c5231f760ed7d1d7
+ /private/tmp/communitymech-batch72/gas-metadata.json: b74a62a89e16ca9cd50fe670ef7f00f24381239e8b5f79efdff8215b1fe7b033
+ /private/tmp/communitymech-batch72/gas-primary.txt: d49f1c402c7cac76c5ee5fb0f8b61c9b1bbd3635e81fdd585543bf7281ff1f2c
+ /private/tmp/communitymech-batch72/genomemodel-metadata.json: ce249c04ebc67ed00e1f50e7c01b9c6ca3d99d958fdad956aa8d94e106b22f6a
+ /private/tmp/communitymech-batch72/genomemodel-primary.txt: 3dfde3c769a28959a13e975a5970babf4f5f974d4228c94b386e34ed990f6cf9
+ /private/tmp/communitymech-batch72/genomemodel-primary.xml: 86aa6398e999c9e78fc8044699fcff414d4dc158d24fe073df7fdcb4044d1c84
+ /private/tmp/communitymech-batch72/genomemodel-tables.txt: b32446cd1a145eac06bc4608c99bbc103e76b57c522164656bc2a25f524733f2
+ /private/tmp/communitymech-batch72/kineticmodel-metadata.json: 794203e0920d6ecf2868afe1a7bef12a5100b8f4d0c9454ecd9842ebf13bc21c
+ /private/tmp/communitymech-batch72/kineticmodel-primary.txt: 9b55717be5982dfc44cb2eedecb1b708abc388e6c9f7f2a5fb86989c083104ff
+ /private/tmp/communitymech-batch72/kineticmodel-primary.xml: b7f0805edc8b2541d94069e58869235c74d5f9bcb7d8051d319b6e0519389e89
+ /private/tmp/communitymech-batch72/kineticmodel-tables.txt: 4a349923222160522a84953759b4b21d349645ed15718b28afd10fdf71fedb19
+ /private/tmp/communitymech-batch72/peptides-metadata.json: 0d2ddffa85a9b21b335738d61f2f2b68bd532bbcd81c23adb38e1d251f3dcbfd
+ /private/tmp/communitymech-batch72/peptides-primary.txt: fb7e94d40b54f0aaa69302c12d31f6d436001bc368bfc8fc65cdf76d6a20bbc6
+ /private/tmp/communitymech-batch72/peptides-primary.xml: 062a10cffdd28dd1973a104dfae3a05f681d68bd4b8ba0fa62325fc8765812b5
+ /private/tmp/communitymech-batch72/peptides-tables.txt: 8c7351793964662af48cae3aefbb7d12a6205bc256d005e1a03a8046983f14ff
+ /private/tmp/communitymech-batch72/quantification-full.txt: 7497ca618f85ff40c48dff7ab60cead36649344b382e765507d8cdaf7141ffae
+ /private/tmp/communitymech-batch72/quantification-metadata.json: 40322c0ba9e5ebd1ec3d2966ead87252d51dd3c6a8331169a450b6543dba3294
+ /private/tmp/communitymech-batch72/quantification-primary.pdf: 707609c2bbafb62480dfd7d7d4b34fd0dc6706d9544136abe1457229c6ca33fe
+ /private/tmp/communitymech-batch72/sulfadiazine-metadata.json: 590c69febcc41e0d393312f355e3a3cc5835a189d80a82f949cf75c27d5b3c8a
+ /private/tmp/communitymech-batch72/sulfadiazine-primary.txt: 31a9b9dffbf585fffffe172f95b2273ed4d73f4a05bd22abbfd2481da0c6351f
+ /private/tmp/communitymech-batch72/sulfadiazine-primary.xml: 21e4eab4a11a23d72b2e0b22d83d6d98d8e0fb5897bb1485dfcbe484d80e9cb8
+ /private/tmp/communitymech-batch72/sulfadiazine-tables.txt: 43eba14b6d338ee1383e2d11946c2d7f55088d923bbc90e8ec4b8c55e1a6f869
+ /private/tmp/communitymech-batch72/primary-manifest.json: 1e604c2d80c73e2d62156c26f65fd688bb9984a852382500d1db4508a2bbe79b
+ /private/tmp/communitymech-batch72/quantification-page-10.png: 2852f9e6d20d5ab98fced5f70dda6be5335fd44724d738a1dd0a1e724b6f0dab
+ /private/tmp/communitymech-batch72/quantification-page-11.png: 3959cbcbd6deca385365c1a7ad516400ca1b18fdd0a06bd35deece6b3d503213
+primary_urls:
+- https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=DOI%3A10.1016%2Fj.biortech.2024.130607&format=json&resultType=core
+- https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A28092828+AND+SRC%3AMED&format=json&resultType=core
+- https://www.osti.gov/servlets/purl/1856347
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13208806/fullTextXML
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13472149/fullTextXML
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC8918855/fullTextXML
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC11480724/fullTextXML
+primary_graph_snippet_count: 17
+edison:
+ required_for_this_repair: false
+ provider_submissions: 0
+ credits_spent: 0
+ rationale: Existing structure repair only; earlier deferred extension approvals unchanged.
+limitations:
+- All9 original nodes and6 arrows retained with bounded evidence and scope. One existing empty graph independently
+ reviewed and preserved. No new structure or provider submissions.
+- Exact Chlorella/20Z and original20z/PCC7002 papers are primary-abstract-supported; publisher and PNNL full text
+ respectively returned403. This does not prove absent controls. Search highlights were leads, not additional graph
+ evidence.
+- Complete primary main texts/captions and embedded tables read for peptides, sulfadiazine and both modeling papers.
+ Public quantitative-follow-up accepted manuscript main text/tables/captions and included supplement text read;
+ equation pages10-11 visually checked. Other figure pixels, separate supplements and raw data not audited.
+- Both modeling studies concern M.buryatense5GB1/A.platensis, not either reviewed20Z pair. Their nitrogen-exchange
+ predictions are contextual hypotheses, removed from direct graph evidence. Positive Chlorella mutual growth, methane
+ removal and whole-biomass carbon are preserved.
+- Photosynthetic O2 support and positive gas conversion remain. Individual gas fluxes are inferred from overall
+ gas/TIC measurements and growth coefficients; flow cytometry supports biomass estimation, not independent gas-flux
+ validation. Preserve20ZR derivative and separate freshwater pair.
+- Peptide C1/C2 are separate lyophilized biomass panels; commercial Alcalase treatment and predicted peptides do
+ not establish a living ecological chain. Empty graph is justified by this source, not a universal no-interaction
+ claim.
+- Sulfadiazine donor-to-recipient cross-feeding remains supported. Raman supports13C incorporation, not independent15N
+ assimilation. Preserve heterogeneous activity and sampled intermediate nondetection; parent disappears faster
+ in BR1 alone. No closed carbon-balance mineralization or selective donor-protection test asserted.
+- All920 caches and raw non-graph blocks unchanged, not recertified. Canonical taxa unchanged. Non-graph gas-rate/protocol,
+ axenic isotope-label and medium/stock follow-up1612 remains OPEN; prior952/953/1195/1196 fixes preserved.
+- Dedup covered896 all-state issue titles/bodies and ignored/hidden-inclusive local search with40 matching files.
+ Four matching issue bodies952,953,1195,1196 read. No exhaustive PR-comment or local historical report audit claimed.
+- Self-adversarial review is not independent approval. Tasks1608-1611 remain OPEN until protected-main merge. Reviewed
+ status is bounded existing-graph review, not complete corpus or whole-record certification.
+records:
+- path: kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml
+ id: CommunityMech:000192
+ original_sha256: b7104ad623a2a9732321074dbab5545185699654e4db76716221efc630f80472
+ record_sha256: a58d8ac4603390f7322d606e5aacc0002d3240b03d47b5786e994da2c5412cc9
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
+ scope: Whole record and every original node/arrow; bounded existing-graph repair, not exhaustive extension or
+ whole-record certification.
+ summary: Preserve demonstrated mutual growth enhancement while bounding the exchange mediator.; Assign positive
+ biomass carbon to whole-coculture scope, not pairwise carbon transfer.; Retain culture pH with a qualified causal
+ arrow, without colonization or cross-system model claims.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Methane Removal and Mutualistic Growth
+ original_node: Methane Removal and Mutualistic Growth
+ rationale: Preserve demonstrated mutual growth enhancement while bounding the exchange mediator.
+ - node: Methane and Carbon Dioxide Mitigation
+ original_node: Methane and Carbon Dioxide Mitigation
+ rationale: Assign positive biomass carbon to whole-coculture scope, not pairwise carbon transfer.
+ - node: Saline Metabolic Coupling and pH Recovery
+ original_node: Saline Metabolic Coupling and pH Recovery
+ rationale: Retain culture pH with a qualified causal arrow, without colonization or cross-system model claims.
+ removed_node_decisions: []
+ edges_before:
+ - source: Methane Removal and Mutualistic Growth
+ target: Methane and Carbon Dioxide Mitigation
+ description: The mutualistic O2/CO2 exchange that increases growth of both partners under methane feeds the
+ downstream methane removal and biomass carbon-sequestration phenotype.
+ - source: Saline Metabolic Coupling and pH Recovery
+ target: Methane and Carbon Dioxide Mitigation
+ description: 'Saline pH recovery and robust methanotroph-alga metabolic coupling sustain methane-fed coculture
+ conditions that increase methane removal and biomass carbon sequestration.
+
+ '
+ edges_after:
+ - source: Methane Removal and Mutualistic Growth
+ target: Methane and Carbon Dioxide Mitigation
+ description: PARTIAL - enhanced partner growth and methane utilization contribute to greater whole-coculture
+ biomass carbon sequestration. The exact-pair abstract supports these positive outcomes but does not isolate
+ reciprocal gas exchange as their sole mediator; it explicitly implicates factors beyond gaseous exchange.
+ - source: Saline Metabolic Coupling and pH Recovery
+ target: Methane and Carbon Dioxide Mitigation
+ description: HYPOTHESIZED - maintaining a suitable pH could sustain methanotrophic activity and thereby biomass
+ carbon sequestration. The available exact-pair abstract reports the association, not a selective pH perturbation
+ establishing its contribution independently of gas supply or other interactions.
+ retained_edge_decisions:
+ - source: Methane Removal and Mutualistic Growth
+ target: Methane and Carbon Dioxide Mitigation
+ description: PARTIAL - enhanced partner growth and methane utilization contribute to greater whole-coculture
+ biomass carbon sequestration. The exact-pair abstract supports these positive outcomes but does not isolate
+ reciprocal gas exchange as their sole mediator; it explicitly implicates factors beyond gaseous exchange.
+ rationale: PARTIAL - enhanced partner growth and methane utilization contribute to greater whole-coculture biomass
+ carbon sequestration. The exact-pair abstract supports these positive outcomes but does not isolate reciprocal
+ gas exchange as their sole mediator; it explicitly implicates factors beyond gaseous exchange.
+ - source: Saline Metabolic Coupling and pH Recovery
+ target: Methane and Carbon Dioxide Mitigation
+ description: HYPOTHESIZED - maintaining a suitable pH could sustain methanotrophic activity and thereby biomass
+ carbon sequestration. The available exact-pair abstract reports the association, not a selective pH perturbation
+ establishing its contribution independently of gas supply or other interactions.
+ rationale: HYPOTHESIZED - maintaining a suitable pH could sustain methanotrophic activity and thereby biomass
+ carbon sequestration. The available exact-pair abstract reports the association, not a selective pH perturbation
+ establishing its contribution independently of gas supply or other interactions.
+ removed_edge_decisions: []
+ references:
+ - doi:10.1016/j.biortech.2024.130607
+ issues:
+ - 1608
+ - 1612
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture/2026-10-07T015429Z-codex-b0f586.yaml
+ source_review:
+ doi:10.1016/j.biortech.2024.130607:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=DOI%3A10.1016%2Fj.biortech.2024.130607&format=json&resultType=core
+ scope: Primary abstract only; full text not available through Europe PMC.
+ all_retained_graph_snippets_primary_matched: true
+ empty_graph_reviewed: false
+ cache_provenance_certified: false
+- path: kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml
+ id: CommunityMech:000170
+ original_sha256: 23a6f3127eb744bc2fddaf3ac5d6324215026cd8713a04a024d231eea0c6e212
+ record_sha256: e5dfb319c4ad66e288910657f76423b4a083e73f6761bbaeecd1b0c4e1b4afcf
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
+ scope: Whole record and every original node/arrow; bounded existing-graph repair, not exhaustive extension or
+ whole-record certification.
+ summary: Preserve physiological photosynthetic oxygen support without equating it to reciprocal fitness.; Preserve
+ bounded respiratory CO2 recycling while identifying estimated rather than directly measured rates.; Retain positive
+ whole-coculture gas-to-biomass conversion with canonical participants.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Photosynthetic O2 Support for Methane Oxidation
+ original_node: Photosynthetic O2 Support for Methane Oxidation
+ rationale: Preserve physiological photosynthetic oxygen support without equating it to reciprocal fitness.
+ - node: CO2 Utilization by Cyanobacterial Partner
+ original_node: CO2 Utilization by Cyanobacterial Partner
+ rationale: Preserve bounded respiratory CO2 recycling while identifying estimated rather than directly measured
+ rates.
+ - node: Methane and Carbon Dioxide Conversion to Biomass
+ original_node: Methane and Carbon Dioxide Conversion to Biomass
+ rationale: Retain positive whole-coculture gas-to-biomass conversion with canonical participants.
+ removed_node_decisions: []
+ edges_before:
+ - source: Photosynthetic O2 Support for Methane Oxidation
+ target: Methane and Carbon Dioxide Conversion to Biomass
+ description: 'Photosynthetic O2 production supports aerobic methane oxidation, allowing the coculture to convert
+ methane and carbon dioxide into biomass.
+
+ '
+ - source: CO2 Utilization by Cyanobacterial Partner
+ target: Methane and Carbon Dioxide Conversion to Biomass
+ description: 'Cyanobacterial CO2 assimilation closes the reciprocal O2/CO2 exchange that supports simultaneous
+ gas conversion by the two-member coculture.
+
+ '
+ edges_after:
+ - source: Photosynthetic O2 Support for Methane Oxidation
+ target: Methane and Carbon Dioxide Conversion to Biomass
+ description: Photosynthetic oxygen production supports aerobic methane oxidation and thereby positive whole-coculture
+ conversion of gas carbon into biomass. This physiological coupling is retained without requiring an independently
+ measured respiratory-CO2 transfer rate or reciprocal growth enhancement.
+ - source: CO2 Utilization by Cyanobacterial Partner
+ target: Methane and Carbon Dioxide Conversion to Biomass
+ description: PARTIAL - cyanobacterial carbon assimilation contributes to coculture biomass, with respiratory
+ CO2 recycling supported by the follow-up mass-balance interpretation. The individual rates are stoichiometric
+ estimates, so this arrow does not establish the exact recycled fraction or mutually enhanced growth.
+ retained_edge_decisions:
+ - source: Photosynthetic O2 Support for Methane Oxidation
+ target: Methane and Carbon Dioxide Conversion to Biomass
+ description: Photosynthetic oxygen production supports aerobic methane oxidation and thereby positive whole-coculture
+ conversion of gas carbon into biomass. This physiological coupling is retained without requiring an independently
+ measured respiratory-CO2 transfer rate or reciprocal growth enhancement.
+ rationale: Photosynthetic oxygen production supports aerobic methane oxidation and thereby positive whole-coculture
+ conversion of gas carbon into biomass. This physiological coupling is retained without requiring an independently
+ measured respiratory-CO2 transfer rate or reciprocal growth enhancement.
+ - source: CO2 Utilization by Cyanobacterial Partner
+ target: Methane and Carbon Dioxide Conversion to Biomass
+ description: PARTIAL - cyanobacterial carbon assimilation contributes to coculture biomass, with respiratory
+ CO2 recycling supported by the follow-up mass-balance interpretation. The individual rates are stoichiometric
+ estimates, so this arrow does not establish the exact recycled fraction or mutually enhanced growth.
+ rationale: PARTIAL - cyanobacterial carbon assimilation contributes to coculture biomass, with respiratory CO2
+ recycling supported by the follow-up mass-balance interpretation. The individual rates are stoichiometric
+ estimates, so this arrow does not establish the exact recycled fraction or mutually enhanced growth.
+ removed_edge_decisions: []
+ references:
+ - PMID:28092828
+ - PMID:33064298
+ issues:
+ - 1609
+ - 1612
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture/2026-10-07T015429Z-codex-7993e9.yaml
+ source_review:
+ PMID:28092828:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A28092828+AND+SRC%3AMED&format=json&resultType=core
+ scope: Primary abstract only; full text not available through Europe PMC.
+ all_retained_graph_snippets_primary_matched: true
+ empty_graph_reviewed: false
+ cache_provenance_certified: false
+ PMID:33064298:
+ url: https://www.osti.gov/servlets/purl/1856347
+ scope: Public accepted manuscript, main text, tables and included supporting information; not raw data. Selected
+ equation pages rendered separately.
+ all_retained_graph_snippets_primary_matched: true
+ empty_graph_reviewed: false
+ cache_provenance_certified: false
+- path: kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml
+ id: CommunityMech:000390
+ original_sha256: a789b4b2c277c0d06c1a1938f1bb94d9f2f50ad274023f8db11910b853a0dd02
+ record_sha256: 13f107e9c60dafb1f45527dc041ea9c9d1ddb9f72642a368c771a87293d045fa
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
+ scope: Whole record and every original node/arrow; bounded existing-graph repair, not exhaustive extension or
+ whole-record certification.
+ summary: Retain a justified empty ecological graph for two processed biomass panels; document the unresolved living-community
+ mechanisms.
+ renamed_nodes: {}
+ node_decisions: []
+ removed_node_decisions: []
+ edges_before: []
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions: []
+ references:
+ - PMID:42188319
+ issues:
+ - 1610
+ - 1612
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ curation_events_added: 1
+ history_files:
+ - history/records/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia/2026-10-07T015429Z-codex-2356b2.yaml
+ source_review:
+ PMID:42188319:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13208806/fullTextXML
+ scope: Primary abstract and complete main body, embedded tables and captions; not separate supplements, raw
+ data or original figure pixels.
+ all_retained_graph_snippets_primary_matched: true
+ empty_graph_reviewed: true
+ cache_provenance_certified: false
+- path: kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml
+ id: CommunityMech:000462
+ original_sha256: 570da40656e6f594806f7b9c0f02a478df92d1641bd7e1f701357dbcde9d9d42
+ record_sha256: 6b7afe887f8b6dd052a4fae909df27de25e0ee34ad383950c4205bad8548adf6
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml
+ scope: Whole record and every original node/arrow; bounded existing-graph repair, not exhaustive extension or
+ whole-record certification.
+ summary: Preserve donor intermediate release and make its enabling arrow explicitly upstream causal.; Retain recipient
+ carbon assimilation and heterogeneous activity without independent nitrogen claims.; Preserve complementary
+ degradation and sampled nondetection, not faster parent removal or complete mineralization.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Microbacterium 2-Aminopyrimidine Release
+ original_node: Microbacterium 2-Aminopyrimidine Release
+ rationale: Preserve donor intermediate release and make its enabling arrow explicitly upstream causal.
+ - node: Terrabacter 2-Aminopyrimidine Assimilation
+ original_node: Terrabacter 2-Aminopyrimidine Assimilation
+ rationale: Retain recipient carbon assimilation and heterogeneous activity without independent nitrogen claims.
+ - node: Coculture Sulfadiazine Degradation
+ original_node: Coculture Sulfadiazine Degradation
+ rationale: Preserve complementary degradation and sampled nondetection, not faster parent removal or complete
+ mineralization.
+ removed_node_decisions: []
+ edges_before:
+ - source: Microbacterium 2-Aminopyrimidine Release
+ target: Terrabacter 2-Aminopyrimidine Assimilation
+ description: Terrabacter assimilation and degradation of the Microbacterium-derived 2-aminopyrimidine intermediate
+ removes the dead-end product that accumulates in Microbacterium monoculture.
+ - source: Terrabacter 2-Aminopyrimidine Assimilation
+ target: Coculture Sulfadiazine Degradation
+ description: Terrabacter utilization of 2-aminopyrimidine allows the coculture to degrade labeled sulfadiazine
+ without the 2-aminopyrimidine accumulation seen in Microbacterium monoculture.
+ edges_after:
+ - source: Microbacterium 2-Aminopyrimidine Release
+ target: Terrabacter 2-Aminopyrimidine Assimilation
+ description: Microbacterium cleavage supplies sulfadiazine-derived 2-AP to Terrabacter, enabling recipient carbon
+ assimilation. Terrabacter alone did not remove parent sulfadiazine; the coculture-specific recipient Raman
+ shift and axenic 2-AP accumulation support this causal sequence.
+ - source: Terrabacter 2-Aminopyrimidine Assimilation
+ target: Coculture Sulfadiazine Degradation
+ description: 'Terrabacter utilization removes the 2-AP intermediate that persists in Microbacterium axenic cultures,
+ allowing the coculture endpoint to lack detectable 2-AP. This complements parent transformation but does not
+ accelerate it: parent sulfadiazine disappeared by day 2 in Microbacterium alone and day 4 in coculture.'
+ retained_edge_decisions:
+ - source: Microbacterium 2-Aminopyrimidine Release
+ target: Terrabacter 2-Aminopyrimidine Assimilation
+ description: Microbacterium cleavage supplies sulfadiazine-derived 2-AP to Terrabacter, enabling recipient carbon
+ assimilation. Terrabacter alone did not remove parent sulfadiazine; the coculture-specific recipient Raman
+ shift and axenic 2-AP accumulation support this causal sequence.
+ rationale: Microbacterium cleavage supplies sulfadiazine-derived 2-AP to Terrabacter, enabling recipient carbon
+ assimilation. Terrabacter alone did not remove parent sulfadiazine; the coculture-specific recipient Raman
+ shift and axenic 2-AP accumulation support this causal sequence.
+ - source: Terrabacter 2-Aminopyrimidine Assimilation
+ target: Coculture Sulfadiazine Degradation
+ description: 'Terrabacter utilization removes the 2-AP intermediate that persists in Microbacterium axenic cultures,
+ allowing the coculture endpoint to lack detectable 2-AP. This complements parent transformation but does not
+ accelerate it: parent sulfadiazine disappeared by day 2 in Microbacterium alone and day 4 in coculture.'
+ rationale: 'Terrabacter utilization removes the 2-AP intermediate that persists in Microbacterium axenic cultures,
+ allowing the coculture endpoint to lack detectable 2-AP. This complements parent transformation but does not
+ accelerate it: parent sulfadiazine disappeared by day 2 in Microbacterium alone and day 4 in coculture.'
+ removed_edge_decisions: []
+ references:
+ - PMID:42598292
+ issues:
+ - 1611
+ - 1612
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture/2026-10-07T015430Z-codex-ddbd4a.yaml
+ source_review:
+ PMID:42598292:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13472149/fullTextXML
+ scope: Primary abstract and complete main body, embedded tables and captions; not separate supplements, raw
+ data or original figure pixels.
+ all_retained_graph_snippets_primary_matched: true
+ empty_graph_reviewed: false
+ cache_provenance_certified: false
diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv
index 35308a917..80c2a9e63 100644
--- a/reports/causal_graph_review/inventory.tsv
+++ b/reports/causal_graph_review/inventory.tsv
@@ -251,10 +251,10 @@ kb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml Comm
kb/communities/Methylocaldum_Cupriavidus_Methane_Acetate_Crossfeeding_Coculture.yaml CommunityMech:000197 d32433fda917a6b1dc25fb2788762957fe2945f7b2813586c02a9fdae7728c56 2 1 77.5 reports/causal_graph_review/decisions/20261007-four-records-batch71.yaml reviewed
kb/communities/Methylocaldum_Methyloceanibacter_Methane_Crossfeeding_Coculture.yaml CommunityMech:000169 895b7a07d1fe190d25d9867e6314c8a1d81e4ba8d22abcdcddee2b38cff62e00 3 2 93.3 reports/causal_graph_review/decisions/20261007-four-records-batch71.yaml reviewed
kb/communities/Methylocystis_Rhodococcus_Methane_VFA_PHBV_Coculture.yaml CommunityMech:000204 a543b6b7f3df788f7119e74006d7eeec8d75727d68a98dff4a485f992145b0d4 2 0 60.0 reports/causal_graph_review/decisions/20261007-four-records-batch71.yaml reviewed
-kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml CommunityMech:000192 b7104ad623a2a9732321074dbab5545185699654e4db76716221efc630f80472 3 2 100.0 pending
-kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml CommunityMech:000170 23a6f3127eb744bc2fddaf3ac5d6324215026cd8713a04a024d231eea0c6e212 3 2 100.0 pending
-kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml CommunityMech:000390 a789b4b2c277c0d06c1a1938f1bb94d9f2f50ad274023f8db11910b853a0dd02 0 0 0.0 pending
-kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml CommunityMech:000462 570da40656e6f594806f7b9c0f02a478df92d1641bd7e1f701357dbcde9d9d42 3 2 100.0 pending
+kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml CommunityMech:000192 a58d8ac4603390f7322d606e5aacc0002d3240b03d47b5786e994da2c5412cc9 3 2 93.3 reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml reviewed
+kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml CommunityMech:000170 e5dfb319c4ad66e288910657f76423b4a083e73f6761bbaeecd1b0c4e1b4afcf 3 2 93.3 reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml reviewed
+kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml CommunityMech:000390 13f107e9c60dafb1f45527dc041ea9c9d1ddb9f72642a368c771a87293d045fa 0 0 0.0 reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml reviewed
+kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml CommunityMech:000462 6b7afe887f8b6dd052a4fae909df27de25e0ee34ad383950c4205bad8548adf6 3 2 100.0 reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml reviewed
kb/communities/Microcoleus_Massilia_Cyanosphere_Urea_Mutualism.yaml CommunityMech:000157 eb0c3cb2714a0eae6291bf5d9c7cafac787449dd13dfd3f106663a62e239dca1 3 2 100.0 pending
kb/communities/Microhabitat_Mineral_Fungal_Bacterial_SOM_SynCom.yaml CommunityMech:000407 5de3bf29957c111122030447d4062e79fe6a2f241f7e1ab2e213fb240d1f8b77 1 0 50.0 pending
kb/communities/Miscanthus_REE_Tailings_Nitrogen_SynCom10.yaml CommunityMech:000111 12db3d43e9d6f2975669f7c8dd00e06142505d1a0df3e71d3b7417e8d2daee63 3 2 100.0 pending
diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json
index 0f2e98ba2..9358bf8e8 100644
--- a/reports/causal_graph_review/summary.json
+++ b/reports/causal_graph_review/summary.json
@@ -8,8 +8,8 @@
"records_without_edges": 163,
"review_status_counts": {
"needs_research": 24,
- "pending": 208,
- "reviewed": 228
+ "pending": 204,
+ "reviewed": 232
},
"structural_defects": [],
"network_audit": [
diff --git a/reports/causal_graph_review/validation-20261007-batch72.json b/reports/causal_graph_review/validation-20261007-batch72.json
new file mode 100644
index 000000000..310664150
--- /dev/null
+++ b/reports/causal_graph_review/validation-20261007-batch72.json
@@ -0,0 +1,1007 @@
+{
+ "base_commit": "8b90f0da40d7c3efba946f8ffc2183dba193112c",
+ "scope": [
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml"
+ ],
+ "reference_validator_version": "0.1.7",
+ "results": [
+ {
+ "check": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-strict.tsv",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-strict.log",
+ "log_sha256": "08d3fe391cbada5f83b995fd6dfa1edf3c42030af1cb52bfe6cd7a2c3f563700",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch72/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-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-strict.tsv\n"
+ },
+ {
+ "check": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-references.log",
+ "log_sha256": "b9c16e1cf4c68d19a99ab9e07bb9a76192544dc246ce4dc8e50bad65507caede",
+ "output_tail": "Validating kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-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": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-rank.log",
+ "log_sha256": "44af3926eb8db4affc1f1e4bea8a7b235114ede73e35a9f0dd7263beaba7f331",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000192\",\n \"name\": \"Methylomicrobium-Chlorella Methane Sequestration Coculture\",\n \"score\": 93.3,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 6,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture/2026-10-07T015429Z-codex-b0f586.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-strict.tsv",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-strict.log",
+ "log_sha256": "a751e35874dcaed32dae3fade5e2ed37c382db40c4dd08f3d54930cf6e8ef8ca",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch72/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-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-strict.tsv\n"
+ },
+ {
+ "check": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-references.log",
+ "log_sha256": "2728adb05b03fb3559fae5cb60045da21cc82fc33096e52a26101fc111f93f1f",
+ "output_tail": "Validating kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-snippets.log",
+ "log_sha256": "06a536479395cd60c7eab504952fd1ebaea7cd4609924c29d687dbc4183c3686",
+ "output_tail": "# 23 evidence snippets scanned across 1 files\n MATCH 23\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": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-rank.log",
+ "log_sha256": "2b38bab93b2e5d2be92e8a499af856cf13d17121df1714b2bdd78ead97c3b5ac",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000170\",\n \"name\": \"Methylotuvimicrobium-Synechococcus Gas Feedstock Coculture\",\n \"score\": 93.3,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture/2026-10-07T015429Z-codex-7993e9.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-strict.tsv",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-strict.log",
+ "log_sha256": "a7a6f94836e4e63f3c5a538652e0cc8ce2a2e2e102c17c7a7711db24503bc095",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch72/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-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-strict.tsv\n"
+ },
+ {
+ "check": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-references.log",
+ "log_sha256": "bb8e03719000628de35a23f20c86a75268912e05bdb1a6c7aa3fd204f719bc96",
+ "output_tail": "Validating kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.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/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.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": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-snippets.log",
+ "log_sha256": "872637a69e95b3997368edea80eba5db2a2155e0ac9344b758394dcf97491410",
+ "output_tail": "# 14 evidence snippets scanned across 1 files\n MATCH 14\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n"
+ },
+ {
+ "check": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-rank.log",
+ "log_sha256": "c529619ad158decb5ab48627bc06f5fec17dbb4c3d1db1d856328b5eefab217e",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000390\",\n \"name\": \"Microalgae-Cyanobacteria Bioactive Peptide Consortia\",\n \"score\": 0.0,\n \"taxonomy\": 5,\n \"connected_taxa\": 0,\n \"disconnected_taxa\": 5,\n \"ecological_interactions\": 0,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 0,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"ecological_interactions\"\n ],\n \"path\": \"kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia/2026-10-07T015429Z-codex-2356b2.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-strict.tsv",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-strict.log",
+ "log_sha256": "f6395df732ecab4f0883c2e10b82fe40ed77ae97d818b8b7dee00b521f334158",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch72/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-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-strict.tsv\n"
+ },
+ {
+ "check": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-references.log",
+ "log_sha256": "7d31e5b0a743f5fc640d0a88edd2f778ec98f1d231c4fc833a66cbab800f904d",
+ "output_tail": "Validating kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-snippets.log",
+ "log_sha256": "826e9c1ef5038bfe5995c8f56b27f9f6d8418cb9a40f124b1547f2d75876c305",
+ "output_tail": "# 15 evidence snippets scanned across 1 files\n MATCH 15\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": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-rank.log",
+ "log_sha256": "8b1408d5c2de6bb293088e097d2a03d36d26843243b89fbd56e41c1dc359a321",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000462\",\n \"name\": \"Microbacterium-Terrabacter Sulfadiazine Cross-Feeding Coculture\",\n \"score\": 100.0,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 6,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [],\n \"path\": \"kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture/2026-10-07T015430Z-codex-ddbd4a.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture-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-batch72/inventory.log",
+ "log_sha256": "8465b880175b43d5e074289c074ad1ceafcd20ed97953957f68e80636e12840e",
+ "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\": 1447,\n \"edges\": 624,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 163,\n \"review_status_counts\": {\n \"needs_research\": 24,\n \"pending\": 204,\n \"reviewed\": 232\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-batch72/network.log",
+ "log_sha256": "dcb33d46aa53f5e1dec55b1cd6463b83d3723e2ebf8c97999c93d0a5f4a2fed1",
+ "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-batch72/rank-all.log",
+ "log_sha256": "42988a99a73f1ea82ad5bc772bda64262341917c3d2570bb8ea609a897574b07",
+ "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-batch72/render.log",
+ "log_sha256": "cd463af110390f2af0b0433a0c5280759f65a9047e3f1a2e31b0e58316cc224d",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch72/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch72/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch72/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-batch72/render-repeat.log",
+ "log_sha256": "cd463af110390f2af0b0433a0c5280759f65a9047e3f1a2e31b0e58316cc224d",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch72/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch72/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch72/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch72/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-batch71')),('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-batch72/connectivity-survey.log",
+ "log_sha256": "ae8940da3342cbfc9acf1baf1fac27ad809b88fd699f3b26f7ec45294527ebe1",
+ "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 392, \"mixed\": 124, \"community_level_only\": 268, \"taxa\": 1509, \"credited_solely_by_the_rule\": 1240}, \"current\": {\"records\": 460, \"with_community_level\": 393, \"mixed\": 125, \"community_level_only\": 268, \"taxa\": 1511, \"credited_solely_by_the_rule\": 1240}}\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_batch66.py",
+ "tests/test_causal_review_batch67.py",
+ "tests/test_causal_review_batch68.py",
+ "tests/test_causal_review_batch69.py",
+ "tests/test_causal_review_batch7.py",
+ "tests/test_causal_review_batch70.py",
+ "tests/test_causal_review_batch71.py",
+ "tests/test_causal_review_batch72.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-batch72/regressions.log",
+ "log_sha256": "7a476a42a7f6f98a9a9f411b42498a8e2ff9834f06ef0a685ff7c7e857fb9b94",
+ "output_tail": "........................................................................ [ 11%]\n........................................................................ [ 22%]\n........................................................................ [ 33%]\n........................................................................ [ 44%]\n........................................................................ [ 55%]\n........................................................................ [ 66%]\n........................................................................ [ 77%]\n........................................................................ [ 88%]\n........................................................................ [100%]\n648 passed in 211.20s (0:03:31)\n"
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch72.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/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_batch72.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/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-batch72/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/20261007-four-records-batch72.yaml').read_text())\nmanifest=json.loads(P('/private/tmp/communitymech-batch72/primary-manifest.json').read_text())\nprimary={v['reference']:''.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==17==ledger['primary_graph_snippet_count']\nassert ledger['edison']['provider_submissions']==ledger['edison']['credits_spent']==0\nassert sum(len(r['edges_before']) for r in ledger['records'])==6\nassert sum(len(r['edges_after']) for r in ledger['records'])==6\nassert sum(len(r['removed_edge_decisions']) for r in ledger['records'])==0\nassert sum(len(r['node_decisions']) for r in ledger['records'])==9\nassert sum(len(r['removed_node_decisions']) for r in ledger['records'])==0\nempty=yaml.safe_load(P('kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml').read_text())\nassert empty['ecological_interactions']==[]\nev=empty['discussions'][-1]['evidence'][0]\nassert ''.join(ev['snippet'].split()) in primary[ev['reference']]\nprint(json.dumps({'primary_matched_graph_snippets':count,'whitespace_only_matches':count,'primary_matched_new_discussion_snippets':1,'complete_primary_main_texts':5,'abstract_only_sources':2,'paid_submissions':0,'new_nodes_or_arrows':0,'justified_empty_graphs':1,'included_followup_supplement_text_read':True,'separate_supplements_inspected':False,'visually_inspected_equation_pdf_pages':[10,11],'other_original_figure_pixels_inspected':False}))\n"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/primary-graph-proof.log",
+ "log_sha256": "3fe2c13f1c5c7e6f4a5319de8e390c09ad55cd8ff4b0912d581aaa5b1ffc042e",
+ "output_tail": "{\"primary_matched_graph_snippets\": 17, \"whitespace_only_matches\": 17, \"primary_matched_new_discussion_snippets\": 1, \"complete_primary_main_texts\": 5, \"abstract_only_sources\": 2, \"paid_submissions\": 0, \"new_nodes_or_arrows\": 0, \"justified_empty_graphs\": 1, \"included_followup_supplement_text_read\": true, \"separate_supplements_inspected\": false, \"visually_inspected_equation_pdf_pages\": [10, 11], \"other_original_figure_pixels_inspected\": false}\n"
+ },
+ {
+ "check": "focused-final",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-m",
+ "pytest",
+ "-q",
+ "tests/test_causal_review_batch72.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch72/focused-final.log",
+ "log_sha256": "c7bb432e60dcf436a1bbe4b798492bafe3151fc124b4500a0c561dcdc2df3800",
+ "output_tail": "................ [100%]\n16 passed in 17.52s\n"
+ }
+ ],
+ "limitations": [
+ "All9 original nodes and6 arrows retained with bounded evidence and scope. One existing empty graph independently reviewed and preserved. No new structure or provider submissions.",
+ "Exact Chlorella/20Z and original20z/PCC7002 papers are primary-abstract-supported; publisher and PNNL full text respectively returned403. This does not prove absent controls. Search highlights were leads, not additional graph evidence.",
+ "Complete primary main texts/captions and embedded tables read for peptides, sulfadiazine and both modeling papers. Public quantitative-follow-up accepted manuscript main text/tables/captions and included supplement text read; equation pages10-11 visually checked. Other figure pixels, separate supplements and raw data not audited.",
+ "Both modeling studies concern M.buryatense5GB1/A.platensis, not either reviewed20Z pair. Their nitrogen-exchange predictions are contextual hypotheses, removed from direct graph evidence. Positive Chlorella mutual growth, methane removal and whole-biomass carbon are preserved.",
+ "Photosynthetic O2 support and positive gas conversion remain. Individual gas fluxes are inferred from overall gas/TIC measurements and growth coefficients; flow cytometry supports biomass estimation, not independent gas-flux validation. Preserve20ZR derivative and separate freshwater pair.",
+ "Peptide C1/C2 are separate lyophilized biomass panels; commercial Alcalase treatment and predicted peptides do not establish a living ecological chain. Empty graph is justified by this source, not a universal no-interaction claim.",
+ "Sulfadiazine donor-to-recipient cross-feeding remains supported. Raman supports13C incorporation, not independent15N assimilation. Preserve heterogeneous activity and sampled intermediate nondetection; parent disappears faster in BR1 alone. No closed carbon-balance mineralization or selective donor-protection test asserted.",
+ "All920 caches and raw non-graph blocks unchanged, not recertified. Canonical taxa unchanged. Non-graph gas-rate/protocol, axenic isotope-label and medium/stock follow-up1612 remains OPEN; prior952/953/1195/1196 fixes preserved.",
+ "Dedup covered896 all-state issue titles/bodies and ignored/hidden-inclusive local search with40 matching files. Four matching issue bodies952,953,1195,1196 read. No exhaustive PR-comment or local historical report audit claimed.",
+ "Self-adversarial review is not independent approval. Tasks1608-1611 remain OPEN until protected-main merge. Reviewed status is bounded existing-graph review, not complete corpus or whole-record certification.",
+ "Exact HTML-description parser and repeat-render checks, not browser screenshots. Post-commit docs-current is separate."
+ ],
+ "snippet_counts_by_record": {
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml": {
+ "MATCH": 22,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml": {
+ "MATCH": 23,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml": {
+ "MATCH": 14,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml": {
+ "MATCH": 15,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ }
+ },
+ "unchanged_raw_blocks": 64,
+ "unchanged_record_files": 456,
+ "unchanged_cache_files": 920,
+ "edison": {
+ "required_for_this_repair": false,
+ "provider_submissions": 0,
+ "credits_spent": 0,
+ "rationale": "Existing structure repair only; earlier deferred extension approvals unchanged."
+ },
+ "primary_artifacts": {
+ "/private/tmp/communitymech-batch72/chlorella-metadata.json": "1841e9c626ce9eb23405e0fe5d92de8995df3fa56d08be40cf053588731fa33d",
+ "/private/tmp/communitymech-batch72/chlorella-primary.txt": "d7aa52fb4aeb95960b1600d0d67a47a540c976b8fb398d19c5231f760ed7d1d7",
+ "/private/tmp/communitymech-batch72/gas-metadata.json": "b74a62a89e16ca9cd50fe670ef7f00f24381239e8b5f79efdff8215b1fe7b033",
+ "/private/tmp/communitymech-batch72/gas-primary.txt": "d49f1c402c7cac76c5ee5fb0f8b61c9b1bbd3635e81fdd585543bf7281ff1f2c",
+ "/private/tmp/communitymech-batch72/genomemodel-metadata.json": "ce249c04ebc67ed00e1f50e7c01b9c6ca3d99d958fdad956aa8d94e106b22f6a",
+ "/private/tmp/communitymech-batch72/genomemodel-primary.txt": "3dfde3c769a28959a13e975a5970babf4f5f974d4228c94b386e34ed990f6cf9",
+ "/private/tmp/communitymech-batch72/genomemodel-primary.xml": "86aa6398e999c9e78fc8044699fcff414d4dc158d24fe073df7fdcb4044d1c84",
+ "/private/tmp/communitymech-batch72/genomemodel-tables.txt": "b32446cd1a145eac06bc4608c99bbc103e76b57c522164656bc2a25f524733f2",
+ "/private/tmp/communitymech-batch72/kineticmodel-metadata.json": "794203e0920d6ecf2868afe1a7bef12a5100b8f4d0c9454ecd9842ebf13bc21c",
+ "/private/tmp/communitymech-batch72/kineticmodel-primary.txt": "9b55717be5982dfc44cb2eedecb1b708abc388e6c9f7f2a5fb86989c083104ff",
+ "/private/tmp/communitymech-batch72/kineticmodel-primary.xml": "b7f0805edc8b2541d94069e58869235c74d5f9bcb7d8051d319b6e0519389e89",
+ "/private/tmp/communitymech-batch72/kineticmodel-tables.txt": "4a349923222160522a84953759b4b21d349645ed15718b28afd10fdf71fedb19",
+ "/private/tmp/communitymech-batch72/peptides-metadata.json": "0d2ddffa85a9b21b335738d61f2f2b68bd532bbcd81c23adb38e1d251f3dcbfd",
+ "/private/tmp/communitymech-batch72/peptides-primary.txt": "fb7e94d40b54f0aaa69302c12d31f6d436001bc368bfc8fc65cdf76d6a20bbc6",
+ "/private/tmp/communitymech-batch72/peptides-primary.xml": "062a10cffdd28dd1973a104dfae3a05f681d68bd4b8ba0fa62325fc8765812b5",
+ "/private/tmp/communitymech-batch72/peptides-tables.txt": "8c7351793964662af48cae3aefbb7d12a6205bc256d005e1a03a8046983f14ff",
+ "/private/tmp/communitymech-batch72/quantification-full.txt": "7497ca618f85ff40c48dff7ab60cead36649344b382e765507d8cdaf7141ffae",
+ "/private/tmp/communitymech-batch72/quantification-metadata.json": "40322c0ba9e5ebd1ec3d2966ead87252d51dd3c6a8331169a450b6543dba3294",
+ "/private/tmp/communitymech-batch72/quantification-primary.pdf": "707609c2bbafb62480dfd7d7d4b34fd0dc6706d9544136abe1457229c6ca33fe",
+ "/private/tmp/communitymech-batch72/sulfadiazine-metadata.json": "590c69febcc41e0d393312f355e3a3cc5835a189d80a82f949cf75c27d5b3c8a",
+ "/private/tmp/communitymech-batch72/sulfadiazine-primary.txt": "31a9b9dffbf585fffffe172f95b2273ed4d73f4a05bd22abbfd2481da0c6351f",
+ "/private/tmp/communitymech-batch72/sulfadiazine-primary.xml": "21e4eab4a11a23d72b2e0b22d83d6d98d8e0fb5897bb1485dfcbe484d80e9cb8",
+ "/private/tmp/communitymech-batch72/sulfadiazine-tables.txt": "43eba14b6d338ee1383e2d11946c2d7f55088d923bbc90e8ec4b8c55e1a6f869",
+ "/private/tmp/communitymech-batch72/primary-manifest.json": "1e604c2d80c73e2d62156c26f65fd688bb9984a852382500d1db4508a2bbe79b",
+ "/private/tmp/communitymech-batch72/quantification-page-10.png": "2852f9e6d20d5ab98fced5f70dda6be5335fd44724d738a1dd0a1e724b6f0dab",
+ "/private/tmp/communitymech-batch72/quantification-page-11.png": "3959cbcbd6deca385365c1a7ad516400ca1b18fdd0a06bd35deece6b3d503213"
+ },
+ "network_delta": {
+ "existing_findings_preserved": 44,
+ "added_findings": {},
+ "removed_findings": {},
+ "interpretation": "All44 baseline warnings preserved exactly. Explicit whole-coculture participants do not assert member-specific causal contributions. No taxonomy or auditor-rule changes."
+ },
+ "render_determinism": true,
+ "published_description_coverage": {
+ "pages": 456,
+ "nodes": 1433,
+ "arrows": 616
+ },
+ "participant_census": {
+ "measurements": {
+ "baseline": {
+ "records": 460,
+ "with_community_level": 392,
+ "mixed": 124,
+ "community_level_only": 268,
+ "taxa": 1509,
+ "credited_solely_by_the_rule": 1240
+ },
+ "current": {
+ "records": 460,
+ "with_community_level": 393,
+ "mixed": 125,
+ "community_level_only": 268,
+ "taxa": 1511,
+ "credited_solely_by_the_rule": 1240
+ }
+ },
+ "delta": {
+ "records": 0,
+ "with_community_level": 1,
+ "mixed": 1,
+ "community_level_only": 0,
+ "taxa": 2,
+ "credited_solely_by_the_rule": 0
+ },
+ "interpretation": "Chlorella carbon and pH endpoints now community-level alongside the mutualistic-growth pairwise node, adding one mixed-scope record. The survey taxa denominator counts only records with community-level nodes: two existing members enter that denominator, not new taxonomy. Both retain pairwise links, so solely-rule count is unchanged. Synechococcus biomass remains community-level. Peptide graph stays empty. No taxonomy or auditor-rule change."
+ },
+ "network_warning_count": 44,
+ "corpus": {
+ "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.",
+ "records": 460,
+ "nodes": 1447,
+ "edges": 624,
+ "records_without_nodes": 8,
+ "records_without_edges": 163,
+ "review_status_counts": {
+ "needs_research": 24,
+ "pending": 204,
+ "reviewed": 232
+ },
+ "structural_defects": []
+ },
+ "tested_file_sha256": {
+ "reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml": "f2fb00dfb79b4fbe7e95196d9d5c21f40b52956cd1bce051c8165e26e04a362d",
+ "tests/test_causal_review_batch72.py": "9009b168fe74c41ed433fc8fec6c33b785158dca51e1cd35e9b428d12eb954ae",
+ "tests/test_participating_taxa.py": "91577fc41f8296be06ac18ab59e59c1325e0f473492d4f8c90820a7f461495a6",
+ "kb/communities/Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml": "a58d8ac4603390f7322d606e5aacc0002d3240b03d47b5786e994da2c5412cc9",
+ "kb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml": "e5dfb319c4ad66e288910657f76423b4a083e73f6761bbaeecd1b0c4e1b4afcf",
+ "kb/communities/Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia.yaml": "13f107e9c60dafb1f45527dc041ea9c9d1ddb9f72642a368c771a87293d045fa",
+ "kb/communities/Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture.yaml": "6b7afe887f8b6dd052a4fae909df27de25e0ee34ad383950c4205bad8548adf6",
+ "reports/causal_graph_review/README.md": "217be0f098750ad762f575920e0e51e1aaadf8faff4a8dd0236f8a487506c24c"
+ },
+ "status": "verified_assay_boundary_graph_review",
+ "pre_research_baseline": {
+ "base_commit": "8b90f0da40d7c3efba946f8ffc2183dba193112c",
+ "base_tree": "daa7d346675decaf8771862b02cb7918782130d9",
+ "research_worktree": "/private/tmp/communitymech-causal-batch71",
+ "checks": [
+ {
+ "name": "rank",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_code": 0,
+ "log": "/private/tmp/communitymech-batch72/baseline-rank.log",
+ "sha256": "dfb3f0531a0223469dd6d6995793e6d9413677cf6b9bafebd7ca9744d7a49e7c",
+ "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-batch72/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-batch72/baseline-network.log",
+ "sha256": "dcb33d46aa53f5e1dec55b1cd6463b83d3723e2ebf8c97999c93d0a5f4a2fed1",
+ "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-batch72/baseline-downstream.log",
+ "sha256": "4347c710bd53a32fc9b3bd9320f862d3a1c385f41e991fe7d61f21093c460e40",
+ "output_tail": "ans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:247: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:344: downstream:\nkb/communities/Shewanella_Streptococcus_Starch_Microbial_Fuel_Cell.yaml:140: downstream:\nkb/communities/Shewanella_Streptococcus_Starch_Microbial_Fuel_Cell.yaml:221: downstream:\nkb/communities/Human_Gut_FourMember_Proteome_Complementarity_Consortium.yaml:153: downstream:\nkb/communities/Human_Gut_FourMember_Proteome_Complementarity_Consortium.yaml:218: 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/Rumen_Substrate_Adapted_Lignocellulose_Enrichment_Consortia.yaml:328: downstream:\nkb/communities/OMM12_Gnotobiotic_Mouse_Gut_Community.yaml:88: downstream:\nkb/communities/OMM12_Gnotobiotic_Mouse_Gut_Community.yaml:129: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:311: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:365: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:125: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:268: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:317: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:138: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:182: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:232: downstream:\nkb/communities/KBase_ORT_Workflow_Community_Model.yaml:186: downstream:\nkb/communities/KBase_ORT_Workflow_Community_Model.yaml:284: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\n"
+ }
+ ],
+ "baseline_sha256": "e71b1ae9433ad87bd81a0979098ee7b6cc5ead2a16aaccc5a90e662d1becaf06"
+ },
+ "reference_validator_caveat": "CLI Total checks counts reported issues, not executed checks. Cache MATCH is not scientific entailment or provenance certification. All920 caches unchanged;17 retained graph excerpts and one new discussion excerpt independently match fresh primary text after whitespace normalization. Two exact-pair sources remain abstract-supported after403 responses. Metadata1612 remains OPEN. Broader cache limitations persist."
+}
diff --git a/tests/test_causal_review_batch72.py b/tests/test_causal_review_batch72.py
new file mode 100644
index 000000000..f36aebdd3
--- /dev/null
+++ b/tests/test_causal_review_batch72.py
@@ -0,0 +1,162 @@
+"""Preserve gas physiology, carbon transfer, and a justified empty peptide graph."""
+
+import hashlib
+from pathlib import Path
+
+import yaml
+
+ROOT = Path(__file__).resolve().parents[1]
+LEDGER = ROOT / "reports/causal_graph_review/decisions/20261007-four-records-batch72.yaml"
+A = "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture"
+B = "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture"
+C = "Microalgae_Cyanobacteria_Bioactive_Peptide_Consortia"
+D = "Microbacterium_Terrabacter_Sulfadiazine_CrossFeeding_Coculture"
+
+
+def records():
+ ledger = yaml.safe_load(LEDGER.read_text())
+ rows = {Path(r["path"]).stem: r for r in ledger["records"]}
+ docs = {s: yaml.safe_load((ROOT / r["path"]).read_text()) for s, r in rows.items()}
+ return ledger, rows, docs
+
+
+def test_chlorella_retains_mutual_growth_but_not_cross_system_mechanisms():
+ _, _, docs = records()
+ growth, carbon, ph = docs[A]["ecological_interactions"]
+ assert growth["interaction_type"] == "MUTUALISM"
+ assert "enhanced growth of both" in growth["description"]
+ assert "order of magnitude" in carbon["description"]
+ for node in [carbon, ph]:
+ assert node["scope"] == "COMMUNITY_LEVEL"
+ assert len(node["participating_taxa"]) == 2
+ assert not {"source_taxon", "target_taxon", "interaction_type"} & node.keys()
+ assert growth["downstream"][0]["description"].startswith("PARTIAL -")
+ assert ph["downstream"][0]["description"].startswith("HYPOTHESIZED -")
+ assert all(
+ ev["reference"] == "doi:10.1016/j.biortech.2024.130607"
+ for node in docs[A]["ecological_interactions"]
+ for ev in node["evidence"]
+ )
+ rationale = docs[A]["discussions"][-1]["rationale"]
+ assert "M. buryatense 5GB1/A. platensis" in rationale
+ assert "prediction awaiting experimental validation" in rationale
+
+
+def test_gas_coculture_preserves_oxygen_support_but_identifies_estimated_rates():
+ _, _, docs = records()
+ oxygen, carbon, biomass = docs[B]["ecological_interactions"]
+ assert "interaction_type" not in oxygen and "interaction_type" not in biomass
+ assert not oxygen["downstream"][0]["description"].startswith("HYPOTHESIZED")
+ assert "does not imply anaerobic" in oxygen["description"]
+ assert carbon["description"].startswith("PARTIAL -")
+ assert "stoichiometric estimates" in carbon["downstream"][0]["description"]
+ assert "equations 3-9" in carbon["evidence"][1]["explanation"]
+ assert "validates biomass estimates" in carbon["evidence"][1]["explanation"]
+ assert all(ev["supports"] == "PARTIAL" for ev in carbon["evidence"])
+ assert len(biomass["participating_taxa"]) == 2
+ assert "20ZR derivative" in biomass["description"]
+
+
+def test_peptide_panel_retains_empty_graph_without_losing_the_positive_assays():
+ _, rows, docs = records()
+ doc = docs[C]
+ assert doc["ecological_interactions"] == []
+ assert rows[C]["node_decisions"] == rows[C]["edges_after"] == []
+ assert set(rows[C]["allowed_changed_fields"]) == {"discussions", "curation_history"}
+ discussion = doc["discussions"][-1]
+ assert discussion["attaches_to"] == []
+ assert discussion["status"] == "OPEN"
+ for phrase in [
+ "not a five-member",
+ "commercial Alcalase",
+ "not evidence that no interaction",
+ "ABTS",
+ "ORAC",
+ ]:
+ assert phrase in discussion["rationale"]
+ assert "C1 combined" in doc["description"] and "consortium C2 combined" in doc["description"]
+ assert doc["cultivation_setup"][0]["instrument_detail"] == "flat photobioreactor"
+ assert "environmental_factors" not in doc
+ assert {d["accession"] for d in doc["associated_datasets"]} == {"PXD077201", "PXD077149"}
+
+
+def test_sulfadiazine_retains_supported_cross_feeding_without_nitrogen_overclaim():
+ _, _, docs = records()
+ release, assimilation, degradation = docs[D]["ecological_interactions"]
+ assert release["interaction_type"] == "CROSS_FEEDING"
+ assert release["downstream"][0]["target"] == assimilation["name"]
+ assert assimilation["downstream"][0]["target"] == degradation["name"]
+ for node in [release, assimilation]:
+ assert not node["downstream"][0]["description"].startswith(("HYPOTHESIZED", "PARTIAL"))
+ for phrase in [
+ "13C incorporation",
+ "does not independently establish 15N",
+ "42.8 +/- 1.8%",
+ "45.9 +/- 3.2%",
+ "subthreshold",
+ ]:
+ assert phrase in assimilation["description"]
+ assert (
+ "day 2 in Microbacterium alone and day 4 in coculture"
+ in assimilation["downstream"][0]["description"]
+ )
+ assert "sampled days 0, 2 and 4" in degradation["description"]
+ assert "closed carbon balance" in degradation["description"]
+ assert docs[D]["discussions"][0]["discussion_id"] == "exact-brunner-msm-vitamin-composition"
+ assert (
+ "13C- and 15N-diazine labeled"
+ in docs[D]["environmental_factors"][0]["evidence"][0]["snippet"]
+ )
+
+
+def test_batch72_accounts_for_every_original_node_and_arrow_without_extensions():
+ ledger, rows, docs = records()
+ assert sum(len(r["node_decisions"]) for r in rows.values()) == 9
+ assert sum(len(r["edges_before"]) for r in rows.values()) == 6
+ assert sum(len(r["edges_after"]) for r in rows.values()) == 6
+ for stem, row in rows.items():
+ assert not row["removed_node_decisions"] and not row["removed_edge_decisions"]
+ assert not row["renamed_nodes"]
+ assert {(e["source"], e["target"]) for e in row["edges_before"]} == {
+ (e["source"], e["target"]) for e in row["edges_after"]
+ }
+ names = {n["name"] for n in docs[stem]["ecological_interactions"]}
+ assert {n["node"] for n in row["node_decisions"]} == names
+ assert all(e["target"] in names for e in row["edges_after"])
+ assert all(
+ a.split("#", 1)[1] in names
+ for d in docs[stem]["discussions"]
+ for a in d["attaches_to"]
+ if a.startswith("ecological_interactions#")
+ )
+ assert ledger["edison"]["provider_submissions"] == ledger["edison"]["credits_spent"] == 0
+
+
+def test_batch72_participants_are_canonical_and_histories_are_explicit():
+ _, rows, docs = records()
+ for stem, doc in docs.items():
+ canonical = {
+ (t["taxon_term"]["preferred_term"], t["taxon_term"]["term"]["id"])
+ for t in doc["taxonomy"]
+ }
+ for node in doc["ecological_interactions"]:
+ for taxon in node.get("participating_taxa", []):
+ assert (taxon["preferred_term"], taxon["term"]["id"]) in canonical
+ row = rows[stem]
+ assert row["curation_events_added"] == len(row["history_files"]) == 1
+ assert (ROOT / row["history_files"][0]).is_file()
+ assert doc["curation_history"][-1]["llm_assisted"] is True
+ assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"]
+ assert docs[D]["taxonomy"][1]["taxon_term"]["gtdb_grounding_status"] == "UNRESOLVED"
+ assert docs[C]["taxonomy"][1]["taxon_term"]["gtdb_grounding_status"] == "AMBIGUOUS"
+
+
+def test_batch72_review_is_bounded_and_non_graph_followup_stays_open():
+ ledger, _, _ = records()
+ assert not ledger["independent_approval"]
+ assert ledger["issues"] == [1608, 1609, 1610, 1611]
+ assert ledger["unresolved_non_graph_issues"] == [1612]
+ assert ledger["primary_graph_snippet_count"] == 17
+ assert ledger["issue_deduplication"]["ignored_hidden_local_search"]
+ assert "primary-abstract-supported" in " ".join(ledger["limitations"])
+ assert "equation pages10-11 visually checked" in " ".join(ledger["limitations"])
diff --git a/tests/test_participating_taxa.py b/tests/test_participating_taxa.py
index bee85fd41..e686bb1ce 100644
--- a/tests/test_participating_taxa.py
+++ b/tests/test_participating_taxa.py
@@ -337,6 +337,8 @@ def test_a_curie_is_ambiguous_where_members_share_an_id(example):
"Mercury_SFA_EFPC_Sediment_Community.yaml",
"Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml",
"Methylocystis_Rhodococcus_Methane_VFA_PHBV_Coculture.yaml",
+ "Methylomicrobium_Chlorella_Methane_Sequestration_Coculture.yaml",
+ "Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml",
"Mesorhizobium_Synechococcus_B12_Synthetic_Consortium.yaml",
"Methane_MFC_Electrogenesis_Nitrogen_Fixation_Consortium.yaml",
"Methane_Oxidation_CrVI_Reduction_SynCom.yaml",