- Competition
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -630,7 +625,7 @@
Ecological Interactions
Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
CROSS_FEEDING
-
SynCom-YSJ is organized as a multi-stage consortium in which hydrolytic, acidogenic and methanogenic members carry out sequential steps of anaerobic digestion, remodeling metabolism so that hydrolysis and acidogenesis feed downstream methanogenesis. This staged division of labor underlies its superior methane yield and reduced propionate accumulation relative to the methanogen-only SynCom-J.
+
SynCom-YSJ combines hydrolytic, acidogenic and methanogenic members in reactors with a metabolically complete native microbiome. Relative to the non-bioaugmented control, methane yield increased by 22% for YSJ versus 8% for methanogen-only SynCom-J; YSJ nearly eliminated start-up lag. Both consortia reduced propionate accumulation by 1.6-fold. PARTIAL - Staged metabolite hand-off is the proposed cross-feeding mechanism, not a resolved transfer between particular introduced members or a YSJ-specific propionate advantage.
@@ -672,8 +667,8 @@
Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic mem
Downstream Effects:
- → Interspecies electron transfer supporting methanogenesis
-
Hydrolytic and acidogenic stages feed the methanogenic stage, while SynCom-YSJ upregulates interspecies electron transfer and acetoclastic and hydrogenotrophic methanogenesis as part of the same coordinated metabolic remodeling program.
+ → Putative interspecies electron transfer supporting methanogenesis
+
HYPOTHESIZED - Hydrolytic and acidogenic processing can supply methanogenic substrates and thereby support electron-transfer-associated methanogenesis. The available abstract reports coordinated functional changes after bioaugmentation but does not resolve this mediation or separate introduced-member hand-off from native-community activity.
@@ -689,23 +684,35 @@
Evidence
PMID:41825563
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"a multi-stage consortium comprising hydrolytic, acidogenic, and methanogenic members (SynCom-YSJ)"
"increased methane yield by 22% (vs. 8% for SynCom-J) and nearly eliminated the start-up lag phase, while both consortia reduced propionate accumulation by 1.6-fold."
+
+
+
-
Interspecies electron transfer supporting methanogenesis
- SYNTROPHY
+
Putative interspecies electron transfer supporting methanogenesis
-
Metagenomic analysis of the SynCom-YSJ-bioaugmented digester showed upregulation of genes for interspecies electron transfer alongside energy metabolism and acetoclastic and hydrogenotrophic methanogenesis, indicating syntrophic electron exchange between acid-forming members and methanogens.
+
PARTIAL - Metagenomic analysis associates YSJ bioaugmentation with hydrolysis, acidogenesis, interspecies electron transfer, energy metabolism and methanogenesis functions. The abstract calls this gene upregulation; this metagenomic statement alone does not establish transcription, protein activity, measured electron flux, direct electrical transfer or obligate syntrophy. Methane gains are retained independently of the unresolved transfer mechanism.
@@ -746,7 +753,7 @@
Interspecies electron transfer supporting methanogenesis
→ Deterministic selection of the resident community by SynCom colonization
-
SynCom-YSJ metabolic reprogramming couples interspecies electron transfer with acetoclastic and hydrogenotrophic methanogenesis, shifting acetate and propionate pools in the digester microenvironment and selecting the resident community.
+
HYPOTHESIZED - Electron-transfer-associated methanogenesis could alter acetate and propionate turnover, changing the chemical environment that selects resident taxa. Bioaugmentation changes both function and community structure; the abstract does not isolate electron transfer as the cause of pool shifts or deterministic selection.
@@ -762,7 +769,7 @@
Evidence
PMID:41825563
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"upregulating genes involved in hydrolysis, acidogenesis, interspecies electron transfer, energy metabolism, and acetoclastic/hydrogenotrophic methanogenesis"
@@ -776,9 +783,8 @@
Evidence
Deterministic selection of the resident community by SynCom colonization
- COMPETITION
-
Successful colonization by the SynComs reshaped the anaerobic-digestion microenvironment (elevated acetate, reduced propionate, moderate non-inhibitory ammonia increase), imposing deterministic selection on the resident native community.
+
Successful SynCom colonization is reported with elevated acetate, reduced propionate and a moderate non-inhibitory total-ammonia-nitrogen increase. PARTIAL - Deterministic selection through this changed environment is the authors interpretation, not demonstration of pairwise resource competition. SynCom-J produced a more robust network, whereas YSJ prioritized methane yield with a more complex network; higher methane output is not universally greater network stability.
@@ -812,7 +818,7 @@
Evidence
PMID:41825563
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"thereby imposing deterministic selection on the resident community"
@@ -828,6 +834,25 @@
Evidence
+
+
Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which selective mechanisms explain the measured community responses?
+
+
Primary abstract supports positive bioaugmentation outcomes, not individually isolated links in the staged hand-off/electron-transfer/environment-selection chain. Obtain authorized full Methods to distinguish metagenomic abundance from expression, native from inoculated contributions, and direct from carrier-mediated electron exchange. Preserve the observed function/stability trade-off and the existing membership follow-up #183. Abstract-only access does not show that controls were absent.
+
+
Attaches to: ecological_interactions#Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members, ecological_interactions#Putative interspecies electron transfer supporting methanogenesis, ecological_interactions#Deterministic selection of the resident community by SynCom colonization
+
+
+
+
+
+
+
@@ -1003,7 +1028,7 @@
Evidence
processes.push("methanogenesis");
- var evidenceCount = 1;
+ var evidenceCount = 2;
nodes.push({
id: intId,
@@ -1022,7 +1047,7 @@
Evidence
(function() {
var intId = "interaction:1";
- var intType = "SYNTROPHY";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1041,7 +1066,7 @@
Evidence
nodes.push({
id: intId,
- label: "Interspecies electron transfer supporting methanogenesis",
+ label: "Putative interspecies electron transfer supporting methanogenesis",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1056,7 +1081,7 @@
Evidence
(function() {
var intId = "interaction:2";
- var intType = "COMPETITION";
+ var intType = "UNKNOWN";
var metabolites = [];
diff --git a/docs/communities/Multiomics_Corn_Straw_Degradation_SynCom.html b/docs/communities/Multiomics_Corn_Straw_Degradation_SynCom.html
index bc987cc7b..a64a9154f 100644
--- a/docs/communities/Multiomics_Corn_Straw_Degradation_SynCom.html
+++ b/docs/communities/Multiomics_Corn_Straw_Degradation_SynCom.html
@@ -516,7 +516,7 @@
Ecological Interactions
@@ -524,8 +524,8 @@
Ecological Interactions
Mutualism
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -534,9 +534,8 @@
Ecological Interactions
Cellulose Hydrolysis During Solid-State Fermentation
- MUTUALISM
-
The eight-strain synthetic community enzymatically degrades the cellulose fraction of corn straw during optimized solid-state fermentation.
+
The eight-strain synthetic community degraded 34.91% of the cellulose fraction of corn straw under the tested optimum solid-state fermentation conditions: 10% inoculum (w/v), 4% nitrogen source ratio and 23 days. This community-level conversion does not establish reciprocal fitness benefits among its members.
@@ -614,9 +613,8 @@
Evidence
Hemicellulose Xylan Hydrolysis
- MUTUALISM
-
The synthetic community degrades corn-straw hemicellulose, with proteomics implicating xylanases and beta-xylosidase in lignocellulose breakdown.
+
The community degraded 45.94% of corn-straw hemicellulose under the tested optimum conditions. Proteomics associates xylanases and beta-xylosidase with lignocellulose degradation; enzyme necessity, sufficiency and strain-specific contributions are not established by the available abstract.
@@ -680,13 +678,26 @@
Evidence
PMID:37774801
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"Proteomic analysis revealed that lignin 1,4-β-xylanase, β-xylosidase and endo-1,4-β-xylanase were closely related to lignocellulose degradation."
"the degradation rates of cellulose, hemicellulose, and lignin were 34.91%, 45.94%, and 23.34%, respectively."
+
+
+
@@ -694,9 +705,8 @@
Evidence
Lignin Breakdown During Solid-State Fermentation
- MUTUALISM
-
The SynCom degrades the lignin fraction of corn straw alongside its cellulose and hemicellulose conversion activity.
+
The community degraded 23.34% of the corn-straw lignin fraction alongside cellulose and hemicellulose conversion. A selective effect of lignin removal on polysaccharide accessibility is HYPOTHESIZED from the available abstract, not resolved by the joint fraction measurements.
@@ -731,7 +741,7 @@
Lignin Breakdown During Solid-State Fermentation
→ Core Corn Straw Lignocellulose Decomposition
-
Lignin breakdown opens the recalcitrant aromatic fraction that limits integrated corn-straw lignocellulose utilization.
+
Lignin breakdown directly contributes conversion of the aromatic fraction to overall corn-straw decomposition. Additional opening of an accessibility barrier for cellulose or hemicellulose is HYPOTHESIZED; simultaneous fraction degradation does not isolate that mediation.
@@ -774,9 +784,8 @@
Evidence
Core Corn Straw Lignocellulose Decomposition
- MUTUALISM
-
Cellulose, hemicellulose, and lignin conversion by the synthetic microbial community jointly decomposes corn straw under optimized solid-state fermentation.
+
Measured cellulose (34.91%), hemicellulose (45.94%) and lignin (23.34%) conversion jointly constitutes corn-straw lignocellulose decomposition under the tested optimum solid-state fermentation conditions. These are distinct fraction-specific percentages, not additive whole-straw yield or evidence of mutual benefit to all eight strains.
@@ -866,6 +875,25 @@
Evidence
+
+
Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which selective mechanisms explain the measured community responses?
+
+
Preserve all three component-to-whole contributions and the measured fraction reductions. Full Methods are not available through Europe PMC; the abstract supports community conversion but not reciprocal member fitness, enzyme necessity or isolated lignin-barrier mediation. Its unusual proteomic wording is quoted verbatim, not repaired into an unsupported ligninolytic enzyme assignment. Resolve strain roles and perturbations before adding member-level structure.
+
+
Attaches to: ecological_interactions#Cellulose Hydrolysis During Solid-State Fermentation, ecological_interactions#Hemicellulose Xylan Hydrolysis, ecological_interactions#Lignin Breakdown During Solid-State Fermentation, ecological_interactions#Core Corn Straw Lignocellulose Decomposition
+
+
+
+
+
+
+
@@ -1049,7 +1077,7 @@
Evidence
(function() {
var intId = "interaction:0";
- var intType = "MUTUALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1081,7 +1109,7 @@
Evidence
(function() {
var intId = "interaction:1";
- var intType = "MUTUALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1094,7 +1122,7 @@
Evidence
processes.push("xylan catabolic process");
- var evidenceCount = 2;
+ var evidenceCount = 3;
nodes.push({
id: intId,
@@ -1113,7 +1141,7 @@
Evidence
(function() {
var intId = "interaction:2";
- var intType = "MUTUALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1145,7 +1173,7 @@
Evidence
(function() {
var intId = "interaction:3";
- var intType = "MUTUALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
diff --git a/docs/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.html b/docs/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.html
index 5f9cea843..a1342a433 100644
--- a/docs/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.html
+++ b/docs/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.html
@@ -617,7 +617,7 @@
Ecological Interactions
Three-Strain Co-Culture Growth Enhancement
CROSS_FEEDING
-
B. longum CICC25033, C. butyricum CICC23847, and L. reuteri CICC6131 grew without detectable antagonism when paired or assembled as a 1:1:1 MRS co-culture, and cell-free supernatants from partner strains enhanced mono-culture growth, especially for L. reuteri. The authors attributed these responses to a putative cross-feeding relationship.
+
The exact B. longum CICC25033, C. butyricum CICC23847 and L. reuteri CICC6131 pairwise and three-strain cultures showed higher viable counts, and 1% partner cell-free supernatant promoted monoculture growth, especially of L. reuteri. PARTIAL - These interventions support diffusible growth promotion and the authors putative cross-feeding interpretation, but do not identify a transferred nutrient or its necessity. Co-culture plate counts are not reported here as member-resolved counts, so increased total growth does not establish absence of antagonism toward every member.
@@ -663,7 +663,7 @@
Evidence
PMID:42604006
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"This could be attributed to a cross-feeding relationship"
@@ -760,7 +760,7 @@
Associated Datasets
-
Knowledge gaps & discussions (1)
+
Knowledge gaps & discussions (2)
@@ -806,6 +806,21 @@
+
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which selective mechanisms explain the measured community responses?
+
+
Preserve higher viable counts and the positive cell-free-supernatant assay; distinguish soluble growth promotion from traced nutritional exchange and aggregate from member-resolved growth. The graph still lacks the measured mixed-species membrane-vesicle production/properties outcome. One-record Edison dry run is complete; paid authorization and report inspection are pending before extension. Do not infer growth-to-vesicle-yield causation, MsrA necessity, or universally superior antioxidant activity: L-MVs exceed M-MVs in the reported ABTS assay. Existing MsrA knowledge gap remains open.
+
+
Attaches to: ecological_interactions#Three-Strain Co-Culture Growth Enhancement
+
+
+
+
diff --git a/history/records/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J/2026-10-07T030930Z-codex-ff9867.yaml b/history/records/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J/2026-10-07T030930Z-codex-ff9867.yaml
new file mode 100644
index 000000000..4e58899a9
--- /dev/null
+++ b/history/records/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J/2026-10-07T030930Z-codex-ff9867.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml
+ slug: Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J
+session:
+ id: 2026-10-07T030930Z-codex-ff9867
+ timestamp: '2026-10-07T03:09:30Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1626
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Preserve methane gains and both-consortium propionate reduction; qualify guild
+ hand-off and its downstream mechanism.; Retain metagenomic transfer interpretation as
+ PARTIAL, not expression, direct flux or obligate syntrophy.; Retain environmental selection
+ interpretation and function/stability trade-off; remove unsupported competition label.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
diff --git a/history/records/Multiomics_Corn_Straw_Degradation_SynCom/2026-10-07T030930Z-codex-3c3e2c.yaml b/history/records/Multiomics_Corn_Straw_Degradation_SynCom/2026-10-07T030930Z-codex-3c3e2c.yaml
new file mode 100644
index 000000000..8384c186d
--- /dev/null
+++ b/history/records/Multiomics_Corn_Straw_Degradation_SynCom/2026-10-07T030930Z-codex-3c3e2c.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml
+ slug: Multiomics_Corn_Straw_Degradation_SynCom
+session:
+ id: 2026-10-07T030930Z-codex-3c3e2c
+ timestamp: '2026-10-07T03:09:30Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1627
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain cellulose conversion and direct contribution to decomposition, not mutualism.;
+ Retain measured hemicellulose conversion; proteomic enzyme mechanism is PARTIAL.; Retain
+ lignin fraction contribution; accessibility-barrier mediation remains HYPOTHESIZED.; Retain
+ joint fraction decomposition, not additive yield or reciprocal fitness.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
diff --git a/history/records/Multispecies_Probiotic_MV_Luteolin_Consortium/2026-10-07T030930Z-codex-80c459.yaml b/history/records/Multispecies_Probiotic_MV_Luteolin_Consortium/2026-10-07T030930Z-codex-80c459.yaml
new file mode 100644
index 000000000..3c38fa700
--- /dev/null
+++ b/history/records/Multispecies_Probiotic_MV_Luteolin_Consortium/2026-10-07T030930Z-codex-80c459.yaml
@@ -0,0 +1,25 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml
+ slug: Multispecies_Probiotic_MV_Luteolin_Consortium
+session:
+ id: 2026-10-07T030930Z-codex-80c459
+ timestamp: '2026-10-07T03:09:30Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1628
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Preserve co-culture and partner-supernatant growth gains; qualify molecular cross-feeding
+ and per-member absence of antagonism. Missing vesicle outcome remains needs_research.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
diff --git a/kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml b/kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml
index e07318690..571e68418 100644
--- a/kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml
+++ b/kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml
@@ -113,11 +113,11 @@ taxonomy:
asserting species identities absent from the abstract.
ecological_interactions:
- name: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
- description: SynCom-YSJ is organized as a multi-stage consortium in which hydrolytic, acidogenic
- and methanogenic members carry out sequential steps of anaerobic digestion, remodeling
- metabolism so that hydrolysis and acidogenesis feed downstream methanogenesis. This staged
- division of labor underlies its superior methane yield and reduced propionate accumulation
- relative to the methanogen-only SynCom-J.
+ description: SynCom-YSJ combines hydrolytic, acidogenic and methanogenic members in reactors with a metabolically
+ complete native microbiome. Relative to the non-bioaugmented control, methane yield increased by 22% for YSJ
+ versus 8% for methanogen-only SynCom-J; YSJ nearly eliminated start-up lag. Both consortia reduced propionate
+ accumulation by 1.6-fold. PARTIAL - Staged metabolite hand-off is the proposed cross-feeding mechanism, not
+ a resolved transfer between particular introduced members or a YSJ-specific propionate advantage.
interaction_type: CROSS_FEEDING
scope: COMMUNITY_LEVEL
metabolites:
@@ -142,32 +142,38 @@ ecological_interactions:
id: GO:0015948
label: methanogenesis
downstream:
- - target: Interspecies electron transfer supporting methanogenesis
- description: Hydrolytic and acidogenic stages feed the methanogenic stage, while
- SynCom-YSJ upregulates interspecies electron transfer and acetoclastic and
- hydrogenotrophic methanogenesis as part of the same coordinated metabolic
- remodeling program.
+ - target: Putative interspecies electron transfer supporting methanogenesis
+ description: HYPOTHESIZED - Hydrolytic and acidogenic processing can supply methanogenic substrates and thereby
+ support electron-transfer-associated methanogenesis. The available abstract reports coordinated functional
+ changes after bioaugmentation but does not resolve this mediation or separate introduced-member hand-off from
+ native-community activity.
evidence:
+ - reference: PMID:41825563
+ supports: PARTIAL
+ evidence_source: IN_VITRO
+ snippet: a multi-stage consortium comprising hydrolytic, acidogenic, and methanogenic members (SynCom-YSJ)
+ explanation: Defines staged functional guilds; membership alone does not demonstrate donor-recipient flux.
- reference: PMID:41825563
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: a multi-stage consortium comprising hydrolytic, acidogenic, and methanogenic members
- (SynCom-YSJ)
- explanation: Defines the staged functional membership (hydrolytic, acidogenic, methanogenic)
- that hands metabolites down the anaerobic-digestion chain.
-- name: Interspecies electron transfer supporting methanogenesis
- description: Metagenomic analysis of the SynCom-YSJ-bioaugmented digester showed upregulation of
- genes for interspecies electron transfer alongside energy metabolism and acetoclastic and
- hydrogenotrophic methanogenesis, indicating syntrophic electron exchange between acid-forming
- members and methanogens.
- interaction_type: SYNTROPHY
+ snippet: increased methane yield by 22% (vs. 8% for SynCom-J) and nearly eliminated the start-up lag phase,
+ while both consortia reduced propionate accumulation by 1.6-fold.
+ explanation: Preserves measured treatment effects and their non-bioaugmented comparator; both consortia reduce
+ propionate.
+- name: Putative interspecies electron transfer supporting methanogenesis
+ description: PARTIAL - Metagenomic analysis associates YSJ bioaugmentation with hydrolysis, acidogenesis, interspecies
+ electron transfer, energy metabolism and methanogenesis functions. The abstract calls this gene upregulation;
+ this metagenomic statement alone does not establish transcription, protein activity, measured electron flux,
+ direct electrical transfer or obligate syntrophy. Methane gains are retained independently of the unresolved
+ transfer mechanism.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: methane
term:
id: CHEBI:16183
label: methane
- notes: Terminal product of the upregulated acetoclastic/hydrogenotrophic methanogenesis module.
+ notes: Methane output increases after bioaugmentation; its electron-transfer route is not resolved by the available
+ abstract.
biological_processes:
- preferred_term: electron transport chain
term:
@@ -179,23 +185,23 @@ ecological_interactions:
label: methanogenesis
downstream:
- target: Deterministic selection of the resident community by SynCom colonization
- description: SynCom-YSJ metabolic reprogramming couples interspecies electron
- transfer with acetoclastic and hydrogenotrophic methanogenesis, shifting acetate
- and propionate pools in the digester microenvironment and selecting the resident
- community.
+ description: HYPOTHESIZED - Electron-transfer-associated methanogenesis could alter acetate and propionate turnover,
+ changing the chemical environment that selects resident taxa. Bioaugmentation changes both function and community
+ structure; the abstract does not isolate electron transfer as the cause of pool shifts or deterministic selection.
evidence:
- reference: PMID:41825563
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
- snippet: upregulating genes involved in hydrolysis, acidogenesis, interspecies electron
- transfer, energy metabolism, and acetoclastic/hydrogenotrophic methanogenesis
- explanation: Metagenomic evidence for interspecies electron transfer coupled to methanogenesis
- within the bioaugmented consortium.
+ snippet: upregulating genes involved in hydrolysis, acidogenesis, interspecies electron transfer, energy metabolism,
+ and acetoclastic/hydrogenotrophic methanogenesis
+ explanation: Supports the authors metagenomic functional interpretation, not measured expression or an identified
+ electron carrier.
- name: Deterministic selection of the resident community by SynCom colonization
- description: Successful colonization by the SynComs reshaped the anaerobic-digestion
- microenvironment (elevated acetate, reduced propionate, moderate non-inhibitory ammonia
- increase), imposing deterministic selection on the resident native community.
- interaction_type: COMPETITION
+ description: Successful SynCom colonization is reported with elevated acetate, reduced propionate and a moderate
+ non-inhibitory total-ammonia-nitrogen increase. PARTIAL - Deterministic selection through this changed environment
+ is the authors interpretation, not demonstration of pairwise resource competition. SynCom-J produced a more
+ robust network, whereas YSJ prioritized methane yield with a more complex network; higher methane output is
+ not universally greater network stability.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: acetate
@@ -210,11 +216,11 @@ ecological_interactions:
notes: Short-chain VFA reduced in the SynCom-remodeled anaerobic-digester microenvironment.
evidence:
- reference: PMID:41825563
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
snippet: thereby imposing deterministic selection on the resident community
- explanation: The introduced SynComs altered the shared microenvironment and deterministically
- selected among resident taxa.
+ explanation: Reports the selection interpretation; it does not identify competitive fitness effects or isolate
+ individual environmental mediators.
growth_media:
- name: partially hydrolyzed food-waste feedstock (semi-continuous AD)
atmosphere: ANAEROBIC
@@ -249,3 +255,28 @@ cultivation_setup:
snippet: SynCom-YSJ consistently outperformed SynCom-J during the entire hydraulic retention time
explanation: Establishes hydraulic retention time (HRT) as the operating retention-time basis of
the reactor.
+discussions:
+- discussion_id: digestion_transfer_and_selection_mediation
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: 'Primary abstract supports positive bioaugmentation outcomes, not individually isolated links in the
+ staged hand-off/electron-transfer/environment-selection chain. Obtain authorized full Methods to distinguish
+ metagenomic abundance from expression, native from inoculated contributions, and direct from carrier-mediated
+ electron exchange. Preserve the observed function/stability trade-off and the existing membership follow-up
+ #183. Abstract-only access does not show that controls were absent.'
+ attaches_to:
+ - ecological_interactions#Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ - ecological_interactions#Putative interspecies electron transfer supporting methanogenesis
+ - ecological_interactions#Deterministic selection of the resident community by SynCom colonization
+curation_history:
+- timestamp: '2026-10-07T03:09:29Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Preserve methane gains and both-consortium propionate reduction; qualify guild hand-off and its downstream
+ mechanism.; Retain metagenomic transfer interpretation as PARTIAL, not expression, direct flux or obligate syntrophy.;
+ Retain environmental selection interpretation and function/stability trade-off; remove unsupported competition
+ label. Issue #1626; reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml b/kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml
index 13f3c6be7..01844efd1 100644
--- a/kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml
+++ b/kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml
@@ -52,9 +52,9 @@ taxonomy:
- *id001
ecological_interactions:
- name: Cellulose Hydrolysis During Solid-State Fermentation
- description: The eight-strain synthetic community enzymatically degrades the cellulose fraction of
- corn straw during optimized solid-state fermentation.
- interaction_type: MUTUALISM
+ description: 'The eight-strain synthetic community degraded 34.91% of the cellulose fraction of corn straw under
+ the tested optimum solid-state fermentation conditions: 10% inoculum (w/v), 4% nitrogen source ratio and 23
+ days. This community-level conversion does not establish reciprocal fitness benefits among its members.'
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: cellulose
@@ -68,20 +68,23 @@ ecological_interactions:
label: cellulose catabolic process
downstream:
- target: Core Corn Straw Lignocellulose Decomposition
- description: Cellulose hydrolysis converts one of the three major corn-straw fractions targeted by
- the SynCom's solid-state degradation process.
+ description: Cellulose hydrolysis converts one of the three major corn-straw fractions targeted by the SynCom's
+ solid-state degradation process.
evidence:
- - *id001
- reference: PMID:37774801
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%,
- 45.94%, and 23.34%, respectively.
+ snippet: The synthetic microbial community was employed to degrade corn straw via solid-state fermentation.
+ explanation: Supports the defined synthetic community design and represented community context.
+ - reference: PMID:37774801
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%, 45.94%, and 23.34%, respectively.
explanation: Quantifies cellulose degradation by the synthetic microbial community.
- name: Hemicellulose Xylan Hydrolysis
- description: The synthetic community degrades corn-straw hemicellulose, with proteomics implicating
- xylanases and beta-xylosidase in lignocellulose breakdown.
- interaction_type: MUTUALISM
+ description: The community degraded 45.94% of corn-straw hemicellulose under the tested optimum conditions. Proteomics
+ associates xylanases and beta-xylosidase with lignocellulose degradation; enzyme necessity, sufficiency and
+ strain-specific contributions are not established by the available abstract.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: hemicellulose
@@ -95,20 +98,30 @@ ecological_interactions:
label: xylan catabolic process
downstream:
- target: Core Corn Straw Lignocellulose Decomposition
- description: Hemicellulose xylan hydrolysis contributes a second measured corn-straw fraction to
- whole-lignocellulose conversion.
+ description: Hemicellulose xylan hydrolysis contributes a second measured corn-straw fraction to whole-lignocellulose
+ conversion.
evidence:
- - *id001
- reference: PMID:37774801
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: Proteomic analysis revealed that lignin 1,4-β-xylanase, β-xylosidase and
- endo-1,4-β-xylanase were closely related to lignocellulose degradation.
- explanation: Supports a proteome-resolved xylanase arm of hemicellulose degradation.
+ snippet: The synthetic microbial community was employed to degrade corn straw via solid-state fermentation.
+ explanation: Supports the defined synthetic community design and represented community context.
+ - reference: PMID:37774801
+ supports: PARTIAL
+ evidence_source: IN_VITRO
+ snippet: Proteomic analysis revealed that lignin 1,4-β-xylanase, β-xylosidase and endo-1,4-β-xylanase were closely
+ related to lignocellulose degradation.
+ explanation: Preserves the primary wording as a proteomic association, not a necessity test or proof that xylanases
+ are ligninases.
+ - reference: PMID:37774801
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%, 45.94%, and 23.34%, respectively.
+ explanation: Directly supports the measured hemicellulose fraction without relying on proteomic mechanism inference.
- name: Lignin Breakdown During Solid-State Fermentation
- description: The SynCom degrades the lignin fraction of corn straw alongside its cellulose and
- hemicellulose conversion activity.
- interaction_type: MUTUALISM
+ description: The community degraded 23.34% of the corn-straw lignin fraction alongside cellulose and hemicellulose
+ conversion. A selective effect of lignin removal on polysaccharide accessibility is HYPOTHESIZED from the available
+ abstract, not resolved by the joint fraction measurements.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: lignin
@@ -122,20 +135,25 @@ ecological_interactions:
label: lignin catabolic process
downstream:
- target: Core Corn Straw Lignocellulose Decomposition
- description: Lignin breakdown opens the recalcitrant aromatic fraction that limits integrated
- corn-straw lignocellulose utilization.
+ description: Lignin breakdown directly contributes conversion of the aromatic fraction to overall corn-straw
+ decomposition. Additional opening of an accessibility barrier for cellulose or hemicellulose is HYPOTHESIZED;
+ simultaneous fraction degradation does not isolate that mediation.
evidence:
- - *id001
- reference: PMID:37774801
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%,
- 45.94%, and 23.34%, respectively.
+ snippet: The synthetic microbial community was employed to degrade corn straw via solid-state fermentation.
+ explanation: Supports the defined synthetic community design and represented community context.
+ - reference: PMID:37774801
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%, 45.94%, and 23.34%, respectively.
explanation: Quantifies lignin degradation by the synthetic microbial community.
- name: Core Corn Straw Lignocellulose Decomposition
- description: Cellulose, hemicellulose, and lignin conversion by the synthetic microbial community
- jointly decomposes corn straw under optimized solid-state fermentation.
- interaction_type: MUTUALISM
+ description: Measured cellulose (34.91%), hemicellulose (45.94%) and lignin (23.34%) conversion jointly constitutes
+ corn-straw lignocellulose decomposition under the tested optimum solid-state fermentation conditions. These
+ are distinct fraction-specific percentages, not additive whole-straw yield or evidence of mutual benefit to
+ all eight strains.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: cellulose
@@ -164,14 +182,17 @@ ecological_interactions:
id: GO:0046274
label: lignin catabolic process
evidence:
- - *id001
- reference: PMID:37774801
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%,
- 45.94%, and 23.34%, respectively.
- explanation: Quantifies degradation of all three major corn-straw
- lignocellulose fractions by the synthetic microbial community.
+ snippet: The synthetic microbial community was employed to degrade corn straw via solid-state fermentation.
+ explanation: Supports the defined synthetic community design and represented community context.
+ - reference: PMID:37774801
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: the degradation rates of cellulose, hemicellulose, and lignin were 34.91%, 45.94%, and 23.34%, respectively.
+ explanation: Quantifies degradation of all three major corn-straw lignocellulose fractions by the synthetic
+ microbial community.
environmental_factors:
- name: defined synthetic community design
value: Species analysis and functional predictions across ecosystems were coupled to construct a core
@@ -241,3 +262,29 @@ growth_media:
source ratio and a fermentation time of 23 d.
explanation: States the optimized solid-state fermentation cultivation conditions
(inoculum level, nitrogen ratio, fermentation time).
+discussions:
+- discussion_id: corn_fraction_conversion_and_enzyme_causality
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: Preserve all three component-to-whole contributions and the measured fraction reductions. Full Methods
+ are not available through Europe PMC; the abstract supports community conversion but not reciprocal member fitness,
+ enzyme necessity or isolated lignin-barrier mediation. Its unusual proteomic wording is quoted verbatim, not
+ repaired into an unsupported ligninolytic enzyme assignment. Resolve strain roles and perturbations before adding
+ member-level structure.
+ attaches_to:
+ - ecological_interactions#Cellulose Hydrolysis During Solid-State Fermentation
+ - ecological_interactions#Hemicellulose Xylan Hydrolysis
+ - ecological_interactions#Lignin Breakdown During Solid-State Fermentation
+ - ecological_interactions#Core Corn Straw Lignocellulose Decomposition
+curation_history:
+- timestamp: '2026-10-07T03:09:29Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain cellulose conversion and direct contribution to decomposition, not mutualism.; Retain measured
+ hemicellulose conversion; proteomic enzyme mechanism is PARTIAL.; Retain lignin fraction contribution; accessibility-barrier
+ mediation remains HYPOTHESIZED.; Retain joint fraction decomposition, not additive yield or reciprocal fitness.
+ Issue #1627; reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml b/kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml
index 17df1f7c2..d4bd13476 100644
--- a/kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml
+++ b/kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml
@@ -131,9 +131,12 @@ taxonomy:
explanation: Names the three exact CICC probiotic strains assembled in the M-MV co-culture.
ecological_interactions:
- name: Three-Strain Co-Culture Growth Enhancement
- description: B. longum CICC25033, C. butyricum CICC23847, and L. reuteri CICC6131 grew without detectable antagonism when
- paired or assembled as a 1:1:1 MRS co-culture, and cell-free supernatants from partner strains enhanced mono-culture growth,
- especially for L. reuteri. The authors attributed these responses to a putative cross-feeding relationship.
+ description: The exact B. longum CICC25033, C. butyricum CICC23847 and L. reuteri CICC6131 pairwise and three-strain
+ cultures showed higher viable counts, and 1% partner cell-free supernatant promoted monoculture growth, especially
+ of L. reuteri. PARTIAL - These interventions support diffusible growth promotion and the authors putative cross-feeding
+ interpretation, but do not identify a transferred nutrient or its necessity. Co-culture plate counts are not
+ reported here as member-resolved counts, so increased total growth does not establish absence of antagonism
+ toward every member.
interaction_type: CROSS_FEEDING
scope: COMMUNITY_LEVEL
biological_processes:
@@ -146,17 +149,17 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: viable cell counts in the co-cultured strains increased significantly
- explanation: Supports higher viable counts in co-cultures than in mono-cultures.
+ explanation: Supports increased co-culture viable counts, not separately demonstrated improvement of every member.
- reference: PMID:42604006
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
snippet: This could be attributed to a cross-feeding relationship
- explanation: Supports the source's cross-feeding interpretation for the growth enhancement.
+ explanation: Explicitly tentative molecular cross-feeding interpretation of positive growth effects.
- reference: PMID:42604006
supports: SUPPORT
evidence_source: IN_VITRO
snippet: Each probiotic strain was cultured in MRS medium supplemented with 1% cell-free supernatant
- explanation: Supports the partner-supernatant experiment used to assay diffusible growth effects.
+ explanation: Supports the partner-supernatant intervention; transferred growth-promoting molecules remain unresolved.
growth_media:
- name: anaerobic MRS broth with C. butyricum L-cysteine amendment
composition:
@@ -312,19 +315,20 @@ metal_notes: The three-strain probiotic co-culture was used to produce membrane
rare-earth element processing role was reported.
discussions:
- discussion_id: cicc_mmv_msra_causality_unresolved
- prompt: Does the M-MV-only methionine sulfoxide reductase MsrA protein causally drive the improved antioxidant and colitis-protective
- phenotype of mixed-species vesicles?
+ prompt: Does the M-MV-only methionine sulfoxide reductase MsrA protein causally drive the improved antioxidant
+ and colitis-protective phenotype of mixed-species vesicles?
kind: KNOWLEDGE_GAP
status: OPEN
attaches_to:
- ecological_interactions
- associated_datasets#PXD071787
- rationale: The LC-MS/MS dataset identified MsrA as unique to M-MVs and its known antioxidant role is directionally consistent
- with higher radical scavenging, but the study did not test an MsrA knockout, inhibition, or add-back design.
+ rationale: The LC-MS/MS dataset identified MsrA as unique to M-MVs and its known antioxidant role is directionally
+ consistent with higher radical scavenging, but the study did not test an MsrA knockout, inhibition, or add-back
+ design.
proposed_experiments:
- name: MsrA-deficient M-MV comparison
- description: Generate an MsrA-deficient M-MV preparation and compare vesicle protein composition, DPPH/ABTS scavenging,
- and DSS-colitis rescue against wild-type M-MVs.
+ description: Generate an MsrA-deficient M-MV preparation and compare vesicle protein composition, DPPH/ABTS
+ scavenging, and DSS-colitis rescue against wild-type M-MVs.
approach: genetic perturbation of probiotic MsrA followed by vesicle proteomics and activity assays
model_systems:
- defined three-strain MRS co-culture
@@ -336,8 +340,8 @@ discussions:
- M-MV LC-MS/MS
- DPPH and ABTS scavenging
- DSS-colitis endpoints
- decision_criterion: A specific loss of M-MV antioxidant and colitis-protective activity would support a causal MsrA contribution;
- retention of activity would point to other vesicle cargo.
+ decision_criterion: A specific loss of M-MV antioxidant and colitis-protective activity would support a causal
+ MsrA contribution; retention of activity would point to other vesicle cargo.
evidence:
- reference: PMID:42604006
supports: SUPPORT
@@ -346,16 +350,36 @@ discussions:
explanation: Documents the paper's stated absence of direct MsrA causal validation.
posed_by: codex
posed_date: '2026-09-22'
+- discussion_id: probiotic_diffusible_growth_and_missing_vesicle_outcome
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: 'Preserve higher viable counts and the positive cell-free-supernatant assay; distinguish soluble growth
+ promotion from traced nutritional exchange and aggregate from member-resolved growth. The graph still lacks
+ the measured mixed-species membrane-vesicle production/properties outcome. One-record Edison dry run is complete;
+ paid authorization and report inspection are pending before extension. Do not infer growth-to-vesicle-yield
+ causation, MsrA necessity, or universally superior antioxidant activity: L-MVs exceed M-MVs in the reported
+ ABTS assay. Existing MsrA knowledge gap remains open.'
+ attaches_to:
+ - ecological_interactions#Three-Strain Co-Culture Growth Enhancement
curation_history:
- timestamp: '2026-09-22T19:55:11Z'
curator: codex
action: ADD_COMMUNITY_RECORD
- changes: Added CommunityMech:000425 for the B. longum CICC25033, C. butyricum CICC23847, and L. reuteri CICC6131 M-MV probiotic
- co-culture from PMID:42604006.
+ changes: Added CommunityMech:000425 for the B. longum CICC25033, C. butyricum CICC23847, and L. reuteri CICC6131
+ M-MV probiotic co-culture from PMID:42604006.
llm_assisted: true
- timestamp: '2026-09-22T19:55:11Z'
curator: codex
action: ADVERSARIAL_REVIEW_FIX
- changes: 'Changed community_category from DIET to BIOTECHNOLOGY after issue #1065; DIET denotes direct interspecies electron
- transfer rather than probiotic membrane-vesicle biotechnology.'
+ changes: 'Changed community_category from DIET to BIOTECHNOLOGY after issue #1065; DIET denotes direct interspecies
+ electron transfer rather than probiotic membrane-vesicle biotechnology.'
+ llm_assisted: true
+- timestamp: '2026-10-07T03:09:29Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Preserve co-culture and partner-supernatant growth gains; qualify molecular cross-feeding and per-member
+ absence of antagonism. Missing vesicle outcome remains needs_research. Issue #1628; reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml'
llm_assisted: true
diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md
index 5668c03c8..228beaaa3 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`.
+## Batch75: Fermentation, Fraction Conversion And Probiotic Growth
+
+[Decisions](decisions/20261007-four-records-batch75.yaml),
+[validation](validation-20261007-batch75.json) and
+[self-adversarial review](adversarial-review-20261007-batch75.yaml) account for
+all ten existing nodes and five arrows. Three records are repaired; the sparse
+mulberry feed graph is reviewed unchanged, preserving its earlier scope fixes.
+
+Methane gains, corn-straw fraction conversion and partner-supernatant growth
+effects remain. Digestion mediation is qualified, metagenomic potential is not
+treated as expression, and component-to-decomposition links are retained without
+unsupported mutualism. Probiotic growth does not identify the exchanged molecule
+or establish absence of antagonism toward every member.
+
+All 19 graph quotations match fresh primary text and existing caches. Three
+papers are supported by abstracts; the probiotic main body and embedded tables
+were read, but not separate supplements or original figure pixels. All caches
+and raw non-graph blocks are preserved. Three append-only histories are added.
+Repairs #1626-#1628 await protected-main merge. Missing vesicle outcome #1629
+remains `needs_research`: one-record Edison dry run completed without spending
+credits; scoped paid authorization and report inspection remain pending.
+Non-graph #1630 stays open. Self-review is not independent approval.
+
## Batch74: Enrichment, Conditional Rescue And Mucin Responses
[Decisions](decisions/20261007-four-records-batch74.yaml),
diff --git a/reports/causal_graph_review/adversarial-review-20261007-batch75.yaml b/reports/causal_graph_review/adversarial-review-20261007-batch75.yaml
new file mode 100644
index 000000000..c74898c6d
--- /dev/null
+++ b/reports/causal_graph_review/adversarial-review-20261007-batch75.yaml
@@ -0,0 +1,219 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 3e844683b766944da3bd8fbec2308ecb7a0982c4
+scope:
+- kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml
+- kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml
+- kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml
+- kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml
+decision_ledger: reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
+validation_report: reports/causal_graph_review/validation-20261007-batch75.json
+findings:
+- issue: 1626
+ severity: P2
+ status: addressed_in_this_change
+ finding: Digestion comparators, genomic inference and mediation.
+ disposition: Close only after protected-main merge.
+- issue: 1627
+ severity: P2
+ status: addressed_in_this_change
+ finding: Corn fraction contributions, enzyme causality and unsupported mutualism.
+ disposition: Close only after protected-main merge.
+- issue: 1628
+ severity: P2
+ status: addressed_in_this_change
+ finding: Probiotic growth, molecular exchange and aggregate counting.
+ disposition: Close only after protected-main merge.
+- issue: 1629
+ severity: P2
+ status: unresolved_research
+ finding: Missing vesicle outcome needs authorized Edison research and report inspection.
+ disposition: Keep OPEN after graph-repair merge.
+- issue: 1630
+ severity: P2
+ status: unresolved_non_graph
+ finding: Functional, strain and dosing metadata require separate reconciliation.
+ disposition: Keep OPEN after graph-repair merge.
+adversarial_checks:
+- Read all four whole records and every original node/arrow after the both-root baseline. Read full probiotic main
+ body, embedded tables and captions, and primary abstracts for the other three. No separate-supplement, raw-data
+ or original-figure-pixel audit. Abstract-only access is not evidence controls were absent.
+- 'Sparse does not imply defective: mulberry retains its two correctly bounded nodes and no arrows. Earlier1103/1104
+ recipe-panel and protein/ABTS fixes stay intact. Genus-level association does not justify a species-level causal
+ edge or an extra curation history.'
+- YSJ22% and J8% methane gains share a non-bioaugmented comparator; both reduce propionate1.6-fold. Correct the
+ former YSJ-specific propionate comparison while preserving both positive outcomes and nearly absent YSJ lag.
+- Do not convert metagenomic functional association into transcription, direct electrical transfer, electron flux
+ or obligate syntrophy. Retain the proposed staged-processing and environmental-selection arrows as HYPOTHESIZED,
+ not selectively isolated mediation; introduced and native activities remain unresolved.
+- 'Selection does not establish competitive fitness effects. Preserve elevated acetate, reduced propionate and moderate
+ non-inhibitory ammonia context, together with the source function/stability trade-off: J has the more robust network,
+ YSJ greater methane output.'
+- Corn cellulose34.91%, hemicellulose45.94%, lignin23.34% are distinct fractions, not additive whole-straw yield.
+ Preserve three component-to-whole causal contributions. Joint conversion does not establish reciprocal fitness
+ among eight strains, so MUTUALISM labels are removed.
+- Corn proteomic enzyme association is PARTIAL, with a direct measured-fraction snippet added independently. Do
+ not silently repair the unusual primary wording or call xylanases validated ligninases. Lignin contribution is
+ supported; selective barrier-opening mediation remains HYPOTHESIZED.
+- Probiotic cell-free-supernatant addition is a positive intervention, not merely a correlation. Preserve that evidence
+ and elevated viable counts while distinguishing diffusible growth promotion from identified nutrient transfer
+ or necessity. Methods give plate counting without member-resolved enumeration; do not equate total growth with
+ universal absence of antagonism.
+- 'Preserve the probiotic MsrA discussion and closed1065 category fix. The missing membrane-vesicle production/properties
+ outcome is not dismissed because the graph is sparse: mark needs_research and track1629. No growth-to-vesicle-yield
+ arrow, universal antioxidant superiority, MsrA necessity, microbiota mediation or human efficacy invented.'
+- Full-source scrutiny found L-MV ABTS greater than M-MV, Nile Red proxy rather than direct luteolin uptake, no
+ in-vivo biodistribution and a preventive male-mouse DSS model. Animal Results/Methods dosing chronology requires
+ reconciliation in separate1630, not silent certainty in this graph-only patch.
+- One-record Edison LITERATURE dry run completed with10231 query characters and zero calls/credits; no submitted
+ response means no inspected report and no extension. Scoped authorization question remains unanswered, not permission.
+ Earlier denied/pending scopes remain unchanged.
+- All10 original nodes and5 arrows have decisions. Three records and histories change,457 records including reviewed
+ mulberry remain byte-identical;920 caches and raw non-graph blocks preserved. No taxonomy or auditor-rule change.
+ Zero structural defects and44 baseline warnings unchanged; connectivity census unchanged.
+- Actual schema, strict, terms, references, snippets, histories, both-root inventory/network/rank, regression, lint
+ and deterministic render gates retained with digests. Ruff caught a missing strict=True in a new test zip; fixed
+ and reran full regressions plus lint, retaining three superseded outputs including the failed lint check. Exact
+ descriptions parsed across456 pages, not browser screenshots. Postcommit docs-current is a separate publication
+ gate.
+- Dedup scanned911 all-state issue titles/bodies and26 ignored/hidden-inclusive local matches; matching1104/1103/1065/310/183
+ bodies read. Existing183 membership work reused. No exhaustive historical PR-comment audit or global source-absence
+ claim. Repairs1626-1628 stay OPEN until protected-main merge;1629 and1630 stay OPEN afterward. Self-review is
+ not independent approval or corpus completion.
+verification:
+ combined_regressions: 669 passed in 195.80s (0:03:15)
+ new_regression_tests: 7
+ schema_strict_terms_history: Passed with actual outputs/digests
+ references: All four full-record reference validators exit0. CLI Total checks counts issues, not executed checks.
+ All19 graph quotations independently match fresh primary XML/abstract and selected existing caches. Cache matching
+ is not entailment. Three sources abstract-only; all920 caches unchanged, not recertified. Prior batch73 gallium
+ non-graph reference exception remains outside this batch.
+ snippet_counts_by_record:
+ kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml:
+ MATCH: 17
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml:
+ MATCH: 10
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml:
+ MATCH: 17
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml:
+ MATCH: 21
+ RENDERING: 1
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ primary_graph_snippet_proof:
+ automatically_primary_matched: 19
+ new_nodes_or_arrows: 0
+ complete_primary_main_texts_read: 1
+ abstract_only_sources: 3
+ separate_supplements_or_original_figure_pixels_inspected: false
+ network:
+ existing_findings_preserved: 44
+ added_findings: {}
+ removed_findings: {}
+ interpretation: All44 baseline warnings preserved exactly. Community scope remains aggregate, not resolved member-specific
+ activity. No taxonomy or auditor-rule changes.
+ black_ruff_diff: passed
+ tested_file_sha256:
+ reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml: ab80d08a11b594625a0e0458b089ccab663f00def93cee6bd12c59e2b9f9d598
+ tests/test_causal_review_batch75.py: 22a96d796cbfe7178fbe5215773f81d1fd6b999105774d9051d478e6870b20fe
+ kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml: db5dd094bbd49fba2952851b1d8394c3b30d04cb08440f850ae04cc77614137d
+ kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml: 5fa9fb489ff93f261f6e0d8d737057f511bfbba46fe3e08958e4cbb1eca42ed6
+ kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml: b6274bb4ad8beb9df16a81340ddbc536cdf94233e9e8961697a8423ec5a14a60
+ kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml: 65986397aa530933ed3b2d65d9cf8110e96b30898c3458c1d024e98fa42a81b4
+ reports/causal_graph_review/README.md: c57657d522ef8d7f6ccae3e83b0d96a7331fe5b94d89bdd44477a6421f6eca1b
+ unchanged_caches: 920
+ unchanged_records: 457
+ edison:
+ required_for_this_repair: false
+ required_for_deferred_extension: true
+ target: CommunityMech:000425
+ dry_run_complete: true
+ query_chars: 10231
+ job: LITERATURE
+ provider_submissions: 0
+ credits_spent: 0
+ authorization: Scoped async question unanswered; no inferred approval.
+ rationale: Existing growth structure repaired; missing vesicle outcome awaits authorized research and report
+ inspection.
+ post_commit_docs_current: Separate publication gate, not asserted before commit.
+participant_census:
+ measurements:
+ baseline:
+ records: 460
+ with_community_level: 393
+ mixed: 125
+ community_level_only: 268
+ taxa: 1511
+ 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: 0
+ mixed: 0
+ community_level_only: 0
+ taxa: 0
+ credited_solely_by_the_rule: 0
+ interpretation: No scope-count change, taxonomy edit, or auditor-rule change. Aggregate outcomes do not establish
+ member-resolved activity.
+corpus:
+ records: 460
+ nodes: 1447
+ edges: 620
+ review_status_counts:
+ needs_research: 26
+ pending: 192
+ reviewed: 242
+limitations:
+- Pre-paper baseline covered460 records and920 caches across both roots, including ignored/hidden YAML. All10 nodes
+ and5 arrows reviewed and retained. Three repaired records/histories; mulberry byte-for-byte unchanged with no
+ manufactured event.
+- Primary abstracts read for mulberry, digestion and corn straw. Their metadata lists subscription-required full
+ text; no claim that controls are absent or that no full copy exists anywhere. Full probiotic primary main body,
+ embedded tables and captions read; separate supplements, original figure pixels and raw data not audited.
+- Every graph quotation independently matches fresh primary XML/abstract and an existing cache using whitespace-only
+ normalization. Cache matching is not entailment. All920 caches and raw non-graph blocks preserved, not recertified;
+ no complete primary paper uploaded.
+- Mulberry panel A/B/C boundaries, true-protein/ABTS evidence and genus-level quality correlation are already bounded.
+ Existing1103/1104 repairs preserved; no arbitrary arrow added to a valid zero-edge graph.
+- Preserve YSJ22% versus J8% methane gains over control and both-consortium1.6-fold propionate reduction. Metagenomics
+ alone is not expression, direct electron flux or obligate syntrophy. Two proposed mediation arrows remain HYPOTHESIZED;
+ competition is not established by selection. Preserve native-community context and function/stability trade-off.
+- Corn-straw fraction conversions34.91%,45.94%,23.34% and three component-to-whole links remain. Proteomic association
+ is not enzyme necessity, fraction percentages are not additive yield, and joint conversion is not reciprocal fitness.
+ Lignin-barrier mediation remains HYPOTHESIZED; unusual source wording is not silently repaired.
+- Probiotic growth and positive partner-supernatant interventions remain. Molecular nutritional exchange and absence
+ of member-specific antagonism are not established by aggregate co-culture counts. Existing MsrA discussion and
+ category1065 fix retained. Missing vesicle outcome stays needs_research in1629.
+- One-community Edison LITERATURE dry run for000425 complete, query10231 characters, zero submissions/credits. Scoped
+ paid approval question unanswered; no inferred permission and no extension. Previous denied/pending scopes remain
+ unchanged.
+- Dedup scanned911 all-state issue titles/bodies and26 matching local files with ignored/hidden-inclusive search
+ and explicit git/docs/site/cache exclusions. Matching1104/1103/1065/310/183 bodies read. No exhaustive PR-comment
+ audit or global source-absence claim.
+- Repair1626-1628 stays OPEN until protected-main merge. Research1629 and non-graph metadata1630 remain OPEN afterward;
+ existing183 membership work is not duplicated. Self-adversarial COMMENT is not independent approval; corpus review
+ unfinished.
diff --git a/reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml b/reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
new file mode 100644
index 000000000..7a9911b78
--- /dev/null
+++ b/reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
@@ -0,0 +1,465 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 3e844683b766944da3bd8fbec2308ecb7a0982c4
+baseline_commit: 3e844683b766944da3bd8fbec2308ecb7a0982c4
+base_tree: eb93c8f206d74c27d93ad12eebbeafd3b66331d7
+pre_source_baseline_sha256: f6b347e62b5a14ff0f6f5bd17671fe7e29024418314a8d1a89727477186a8e4a
+issues:
+- 1626
+- 1627
+- 1628
+unresolved_non_graph_issues:
+- 1630
+unresolved_research_issues:
+- 1629
+issue_deduplication:
+ all_state_issue_titles_and_bodies: 911
+ ignored_hidden_local_search: true
+ matching_local_files: 26
+ matching_issues:
+ - 1104
+ - 1103
+ - 1065
+ - 310
+ - 183
+primary_artifacts:
+ /private/tmp/communitymech-batch75/corn-metadata.json: 807121c91a3fef32fc2c2bbcc504c942d501b06131b08624580ab3e91f4b8fba
+ /private/tmp/communitymech-batch75/corn-primary.txt: e2e0c8dce74cd049aae09d3e8332220893fd136ddef3865701bf807dd998eb11
+ /private/tmp/communitymech-batch75/digestion-metadata.json: 9c90a74e3309834ed024b4f6108aada50a92500e36bde61528597ca3815d8a3a
+ /private/tmp/communitymech-batch75/digestion-primary.txt: 6f60f5e4a765efa2d6fa1866d38e736c02f441d184174a4b862463f8573de054
+ ? /private/tmp/communitymech-batch75/edison-vesicles/Multispecies_Probiotic_MV_Luteolin_Consortium-edison-literature-causal-meta.yaml
+ : 0d43985a8d0ae6ed0f1cd65f2f4e35c96fa4ce6ab906761e886993ae184bb86e
+ /private/tmp/communitymech-batch75/mulberry-metadata.json: d3536ecc2078106131ed08f5c94fa6aa586b9c71b50cd72973fc852f0ab0d731
+ /private/tmp/communitymech-batch75/mulberry-primary.txt: c26591dc587c2bfa7a78b5c40ef43be589e7201e9f7458b1de5e59c2e6cd4d9b
+ /private/tmp/communitymech-batch75/vesicles-metadata.json: 502464d1fe38fb21025ad1fcb83357c52254b4fe7fe95d12f833067523386d56
+ /private/tmp/communitymech-batch75/vesicles-primary.txt: fe8b4a0b0bde31af4b6a7298517380f4aa4c25fdd49f54795137893654f8e318
+ /private/tmp/communitymech-batch75/vesicles-primary.xml: 7d0323ea927100fd8b0ee5b75a2d4245317a85966dfd08fdc2eac4f494a7a49d
+ /private/tmp/communitymech-batch75/primary-manifest.json: 8278ccb1d5f42d1e3d29e056d486fd326791e706943a60fb8428f99d999ea6ba
+ /private/tmp/communitymech-batch75/baseline.json: f6b347e62b5a14ff0f6f5bd17671fe7e29024418314a8d1a89727477186a8e4a
+primary_urls:
+- https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A42566139+AND+SRC%3AMED&format=json&resultType=core
+- https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A41825563+AND+SRC%3AMED&format=json&resultType=core
+- https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A37774801+AND+SRC%3AMED&format=json&resultType=core
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13476518/fullTextXML
+primary_graph_snippet_count: 19
+cache_matched_graph_snippet_count: 19
+snippet_checks:
+- record: Mulberry_Distillers_Grains_Feed_Consortium
+ node: Anaerobic acidifying solid-state feed fermentation
+ reference: PMID:42566139
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Mulberry_Distillers_Grains_Feed_Consortium
+ node: Anaerobic acidifying solid-state feed fermentation
+ reference: PMID:42566139
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Mulberry_Distillers_Grains_Feed_Consortium
+ node: Lactobacillus-associated quality enhancement
+ reference: PMID:42566139
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J
+ node: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ reference: PMID:41825563
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J
+ node: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ reference: PMID:41825563
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J
+ node: Putative interspecies electron transfer supporting methanogenesis
+ reference: PMID:41825563
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J
+ node: Deterministic selection of the resident community by SynCom colonization
+ reference: PMID:41825563
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Cellulose Hydrolysis During Solid-State Fermentation
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Cellulose Hydrolysis During Solid-State Fermentation
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Hemicellulose Xylan Hydrolysis
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Hemicellulose Xylan Hydrolysis
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Hemicellulose Xylan Hydrolysis
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Lignin Breakdown During Solid-State Fermentation
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Lignin Breakdown During Solid-State Fermentation
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Core Corn Straw Lignocellulose Decomposition
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multiomics_Corn_Straw_Degradation_SynCom
+ node: Core Corn Straw Lignocellulose Decomposition
+ reference: PMID:37774801
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multispecies_Probiotic_MV_Luteolin_Consortium
+ node: Three-Strain Co-Culture Growth Enhancement
+ reference: PMID:42604006
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multispecies_Probiotic_MV_Luteolin_Consortium
+ node: Three-Strain Co-Culture Growth Enhancement
+ reference: PMID:42604006
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+- record: Multispecies_Probiotic_MV_Luteolin_Consortium
+ node: Three-Strain Co-Culture Growth Enhancement
+ reference: PMID:42604006
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML/abstract, whitespace-only match
+edison:
+ required_for_this_repair: false
+ required_for_deferred_extension: true
+ target: CommunityMech:000425
+ dry_run_complete: true
+ query_chars: 10231
+ job: LITERATURE
+ provider_submissions: 0
+ credits_spent: 0
+ authorization: Scoped async question unanswered; no inferred approval.
+ rationale: Existing growth structure repaired; missing vesicle outcome awaits authorized research and report inspection.
+limitations:
+- Pre-paper baseline covered460 records and920 caches across both roots, including ignored/hidden YAML. All10 nodes
+ and5 arrows reviewed and retained. Three repaired records/histories; mulberry byte-for-byte unchanged with no
+ manufactured event.
+- Primary abstracts read for mulberry, digestion and corn straw. Their metadata lists subscription-required full
+ text; no claim that controls are absent or that no full copy exists anywhere. Full probiotic primary main body,
+ embedded tables and captions read; separate supplements, original figure pixels and raw data not audited.
+- Every graph quotation independently matches fresh primary XML/abstract and an existing cache using whitespace-only
+ normalization. Cache matching is not entailment. All920 caches and raw non-graph blocks preserved, not recertified;
+ no complete primary paper uploaded.
+- Mulberry panel A/B/C boundaries, true-protein/ABTS evidence and genus-level quality correlation are already bounded.
+ Existing1103/1104 repairs preserved; no arbitrary arrow added to a valid zero-edge graph.
+- Preserve YSJ22% versus J8% methane gains over control and both-consortium1.6-fold propionate reduction. Metagenomics
+ alone is not expression, direct electron flux or obligate syntrophy. Two proposed mediation arrows remain HYPOTHESIZED;
+ competition is not established by selection. Preserve native-community context and function/stability trade-off.
+- Corn-straw fraction conversions34.91%,45.94%,23.34% and three component-to-whole links remain. Proteomic association
+ is not enzyme necessity, fraction percentages are not additive yield, and joint conversion is not reciprocal fitness.
+ Lignin-barrier mediation remains HYPOTHESIZED; unusual source wording is not silently repaired.
+- Probiotic growth and positive partner-supernatant interventions remain. Molecular nutritional exchange and absence
+ of member-specific antagonism are not established by aggregate co-culture counts. Existing MsrA discussion and
+ category1065 fix retained. Missing vesicle outcome stays needs_research in1629.
+- One-community Edison LITERATURE dry run for000425 complete, query10231 characters, zero submissions/credits. Scoped
+ paid approval question unanswered; no inferred permission and no extension. Previous denied/pending scopes remain
+ unchanged.
+- Dedup scanned911 all-state issue titles/bodies and26 matching local files with ignored/hidden-inclusive search
+ and explicit git/docs/site/cache exclusions. Matching1104/1103/1065/310/183 bodies read. No exhaustive PR-comment
+ audit or global source-absence claim.
+- Repair1626-1628 stays OPEN until protected-main merge. Research1629 and non-graph metadata1630 remain OPEN afterward;
+ existing183 membership work is not duplicated. Self-adversarial COMMENT is not independent approval; corpus review
+ unfinished.
+records:
+- path: kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml
+ id: CommunityMech:000435
+ original_sha256: db5dd094bbd49fba2952851b1d8394c3b30d04cb08440f850ae04cc77614137d
+ record_sha256: db5dd094bbd49fba2952851b1d8394c3b30d04cb08440f850ae04cc77614137d
+ status: reviewed
+ outcome: unchanged
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Retain panel-level anaerobic fermentation gains with explicit unresolved assignment to recipes A/B/C;
+ no new arrow from co-occurring endpoints.; Retain genus-level quality association already PARTIAL, not species-specific
+ causal mediation. Existing protein/ABTS and panel-scope fixes preserved.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Anaerobic acidifying solid-state feed fermentation
+ original_node: Anaerobic acidifying solid-state feed fermentation
+ rationale: Retain panel-level anaerobic fermentation gains with explicit unresolved assignment to recipes A/B/C;
+ no new arrow from co-occurring endpoints.
+ - node: Lactobacillus-associated quality enhancement
+ original_node: Lactobacillus-associated quality enhancement
+ rationale: Retain genus-level quality association already PARTIAL, not species-specific causal mediation. Existing
+ protein/ABTS and panel-scope fixes preserved.
+ removed_node_decisions: []
+ edges_before: []
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions: []
+ references:
+ - PMID:42566139
+ issues:
+ - 1630
+ allowed_changed_fields: []
+ curation_events_added: 0
+ history_files: []
+ source_review:
+ PMID:42566139:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A42566139+AND+SRC%3AMED&format=json&resultType=core
+ scope: Primary abstract only; full text not available through Europe PMC.
+ fulltext_error: null
+- path: kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml
+ id: CommunityMech:000274
+ original_sha256: bcdd603fa53d67a36c12ce282fe44becb052db2aaa44b437442efdd41004fddd
+ record_sha256: 5fa9fb489ff93f261f6e0d8d737057f511bfbba46fe3e08958e4cbb1eca42ed6
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Preserve methane gains and both-consortium propionate reduction; qualify guild hand-off and its downstream
+ mechanism.; Retain metagenomic transfer interpretation as PARTIAL, not expression, direct flux or obligate syntrophy.;
+ Retain environmental selection interpretation and function/stability trade-off; remove unsupported competition
+ label.
+ renamed_nodes:
+ Interspecies electron transfer supporting methanogenesis: Putative interspecies electron transfer supporting
+ methanogenesis
+ node_decisions:
+ - node: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ original_node: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ rationale: Preserve methane gains and both-consortium propionate reduction; qualify guild hand-off and its downstream
+ mechanism.
+ - node: Putative interspecies electron transfer supporting methanogenesis
+ original_node: Interspecies electron transfer supporting methanogenesis
+ rationale: Retain metagenomic transfer interpretation as PARTIAL, not expression, direct flux or obligate syntrophy.
+ - node: Deterministic selection of the resident community by SynCom colonization
+ original_node: Deterministic selection of the resident community by SynCom colonization
+ rationale: Retain environmental selection interpretation and function/stability trade-off; remove unsupported
+ competition label.
+ removed_node_decisions: []
+ edges_before:
+ - source: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ target: Interspecies electron transfer supporting methanogenesis
+ description: Hydrolytic and acidogenic stages feed the methanogenic stage, while SynCom-YSJ upregulates interspecies
+ electron transfer and acetoclastic and hydrogenotrophic methanogenesis as part of the same coordinated metabolic
+ remodeling program.
+ - source: Interspecies electron transfer supporting methanogenesis
+ target: Deterministic selection of the resident community by SynCom colonization
+ description: SynCom-YSJ metabolic reprogramming couples interspecies electron transfer with acetoclastic and
+ hydrogenotrophic methanogenesis, shifting acetate and propionate pools in the digester microenvironment and
+ selecting the resident community.
+ edges_after:
+ - source: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ target: Putative interspecies electron transfer supporting methanogenesis
+ description: HYPOTHESIZED - Hydrolytic and acidogenic processing can supply methanogenic substrates and thereby
+ support electron-transfer-associated methanogenesis. The available abstract reports coordinated functional
+ changes after bioaugmentation but does not resolve this mediation or separate introduced-member hand-off from
+ native-community activity.
+ - source: Putative interspecies electron transfer supporting methanogenesis
+ target: Deterministic selection of the resident community by SynCom colonization
+ description: HYPOTHESIZED - Electron-transfer-associated methanogenesis could alter acetate and propionate turnover,
+ changing the chemical environment that selects resident taxa. Bioaugmentation changes both function and community
+ structure; the abstract does not isolate electron transfer as the cause of pool shifts or deterministic selection.
+ retained_edge_decisions:
+ - source: Staged metabolic hand-off across hydrolytic, acidogenic and methanogenic members
+ target: Putative interspecies electron transfer supporting methanogenesis
+ description: HYPOTHESIZED - Hydrolytic and acidogenic processing can supply methanogenic substrates and thereby
+ support electron-transfer-associated methanogenesis. The available abstract reports coordinated functional
+ changes after bioaugmentation but does not resolve this mediation or separate introduced-member hand-off from
+ native-community activity.
+ rationale: HYPOTHESIZED - Hydrolytic and acidogenic processing can supply methanogenic substrates and thereby
+ support electron-transfer-associated methanogenesis. The available abstract reports coordinated functional
+ changes after bioaugmentation but does not resolve this mediation or separate introduced-member hand-off from
+ native-community activity.
+ - source: Putative interspecies electron transfer supporting methanogenesis
+ target: Deterministic selection of the resident community by SynCom colonization
+ description: HYPOTHESIZED - Electron-transfer-associated methanogenesis could alter acetate and propionate turnover,
+ changing the chemical environment that selects resident taxa. Bioaugmentation changes both function and community
+ structure; the abstract does not isolate electron transfer as the cause of pool shifts or deterministic selection.
+ rationale: HYPOTHESIZED - Electron-transfer-associated methanogenesis could alter acetate and propionate turnover,
+ changing the chemical environment that selects resident taxa. Bioaugmentation changes both function and community
+ structure; the abstract does not isolate electron transfer as the cause of pool shifts or deterministic selection.
+ removed_edge_decisions: []
+ references:
+ - PMID:41825563
+ issues:
+ - 1626
+ - 1630
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J/2026-10-07T030930Z-codex-ff9867.yaml
+ source_review:
+ PMID:41825563:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A41825563+AND+SRC%3AMED&format=json&resultType=core
+ scope: Primary abstract only; full text not available through Europe PMC.
+ fulltext_error: null
+- path: kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml
+ id: CommunityMech:000119
+ original_sha256: f26fcecaf12917372e9f746f0950f17599befb4a2021d770d9a823b45dc383f3
+ record_sha256: b6274bb4ad8beb9df16a81340ddbc536cdf94233e9e8961697a8423ec5a14a60
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Retain cellulose conversion and direct contribution to decomposition, not mutualism.; Retain measured
+ hemicellulose conversion; proteomic enzyme mechanism is PARTIAL.; Retain lignin fraction contribution; accessibility-barrier
+ mediation remains HYPOTHESIZED.; Retain joint fraction decomposition, not additive yield or reciprocal fitness.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Cellulose Hydrolysis During Solid-State Fermentation
+ original_node: Cellulose Hydrolysis During Solid-State Fermentation
+ rationale: Retain cellulose conversion and direct contribution to decomposition, not mutualism.
+ - node: Hemicellulose Xylan Hydrolysis
+ original_node: Hemicellulose Xylan Hydrolysis
+ rationale: Retain measured hemicellulose conversion; proteomic enzyme mechanism is PARTIAL.
+ - node: Lignin Breakdown During Solid-State Fermentation
+ original_node: Lignin Breakdown During Solid-State Fermentation
+ rationale: Retain lignin fraction contribution; accessibility-barrier mediation remains HYPOTHESIZED.
+ - node: Core Corn Straw Lignocellulose Decomposition
+ original_node: Core Corn Straw Lignocellulose Decomposition
+ rationale: Retain joint fraction decomposition, not additive yield or reciprocal fitness.
+ removed_node_decisions: []
+ edges_before:
+ - source: Cellulose Hydrolysis During Solid-State Fermentation
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Cellulose hydrolysis converts one of the three major corn-straw fractions targeted by the SynCom's
+ solid-state degradation process.
+ - source: Hemicellulose Xylan Hydrolysis
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Hemicellulose xylan hydrolysis contributes a second measured corn-straw fraction to whole-lignocellulose
+ conversion.
+ - source: Lignin Breakdown During Solid-State Fermentation
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Lignin breakdown opens the recalcitrant aromatic fraction that limits integrated corn-straw lignocellulose
+ utilization.
+ edges_after:
+ - source: Cellulose Hydrolysis During Solid-State Fermentation
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Cellulose hydrolysis converts one of the three major corn-straw fractions targeted by the SynCom's
+ solid-state degradation process.
+ - source: Hemicellulose Xylan Hydrolysis
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Hemicellulose xylan hydrolysis contributes a second measured corn-straw fraction to whole-lignocellulose
+ conversion.
+ - source: Lignin Breakdown During Solid-State Fermentation
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Lignin breakdown directly contributes conversion of the aromatic fraction to overall corn-straw
+ decomposition. Additional opening of an accessibility barrier for cellulose or hemicellulose is HYPOTHESIZED;
+ simultaneous fraction degradation does not isolate that mediation.
+ retained_edge_decisions:
+ - source: Cellulose Hydrolysis During Solid-State Fermentation
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Cellulose hydrolysis converts one of the three major corn-straw fractions targeted by the SynCom's
+ solid-state degradation process.
+ rationale: Cellulose hydrolysis converts one of the three major corn-straw fractions targeted by the SynCom's
+ solid-state degradation process.
+ - source: Hemicellulose Xylan Hydrolysis
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Hemicellulose xylan hydrolysis contributes a second measured corn-straw fraction to whole-lignocellulose
+ conversion.
+ rationale: Hemicellulose xylan hydrolysis contributes a second measured corn-straw fraction to whole-lignocellulose
+ conversion.
+ - source: Lignin Breakdown During Solid-State Fermentation
+ target: Core Corn Straw Lignocellulose Decomposition
+ description: Lignin breakdown directly contributes conversion of the aromatic fraction to overall corn-straw
+ decomposition. Additional opening of an accessibility barrier for cellulose or hemicellulose is HYPOTHESIZED;
+ simultaneous fraction degradation does not isolate that mediation.
+ rationale: Lignin breakdown directly contributes conversion of the aromatic fraction to overall corn-straw decomposition.
+ Additional opening of an accessibility barrier for cellulose or hemicellulose is HYPOTHESIZED; simultaneous
+ fraction degradation does not isolate that mediation.
+ removed_edge_decisions: []
+ references:
+ - PMID:37774801
+ issues:
+ - 1627
+ - 1630
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Multiomics_Corn_Straw_Degradation_SynCom/2026-10-07T030930Z-codex-3c3e2c.yaml
+ source_review:
+ PMID:37774801:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/search?query=EXT_ID%3A37774801+AND+SRC%3AMED&format=json&resultType=core
+ scope: Primary abstract only; full text not available through Europe PMC.
+ fulltext_error: null
+- path: kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml
+ id: CommunityMech:000425
+ original_sha256: e7fb13a262a702bc0c79c7f00f7e2dae04cee374c32762e9c77f079d7bc623f4
+ record_sha256: 65986397aa530933ed3b2d65d9cf8110e96b30898c3458c1d024e98fa42a81b4
+ status: needs_research
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Preserve co-culture and partner-supernatant growth gains; qualify molecular cross-feeding and per-member
+ absence of antagonism. Missing vesicle outcome remains needs_research.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Three-Strain Co-Culture Growth Enhancement
+ original_node: Three-Strain Co-Culture Growth Enhancement
+ rationale: Preserve co-culture and partner-supernatant growth gains; qualify molecular cross-feeding and per-member
+ absence of antagonism. Missing vesicle outcome remains needs_research.
+ removed_node_decisions: []
+ edges_before: []
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions: []
+ references:
+ - PMID:42604006
+ issues:
+ - 1628
+ - 1629
+ - 1630
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Multispecies_Probiotic_MV_Luteolin_Consortium/2026-10-07T030930Z-codex-80c459.yaml
+ source_review:
+ PMID:42604006:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13476518/fullTextXML
+ scope: Primary abstract and complete main body, embedded tables and captions; not separate supplements, raw
+ data or original figure pixels.
+ fulltext_error: null
diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv
index 9257d4b68..6c718e4f3 100644
--- a/reports/causal_graph_review/inventory.tsv
+++ b/reports/causal_graph_review/inventory.tsv
@@ -263,10 +263,10 @@ kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml CommunityMech
kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml CommunityMech:000178 1cdf5aaf167042938bdbdd8d9bcb0abaa322a0a4a99a7f05abd8b2658740e82c 4 1 85.0 reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml reviewed
kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml CommunityMech:000310 40f12b8a0f6ef7d64390819dd8c67282e465da6d24d5098d19080088dd04199d 3 1 83.3 reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml reviewed
kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml CommunityMech:000392 4ef5925538ded3549c72fd84eaa0786922b4f9565de33946289104cef18a5d49 3 1 80.0 reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml reviewed
-kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml CommunityMech:000435 db5dd094bbd49fba2952851b1d8394c3b30d04cb08440f850ae04cc77614137d 2 0 60.0 pending
-kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml CommunityMech:000274 bcdd603fa53d67a36c12ce282fe44becb052db2aaa44b437442efdd41004fddd 3 2 100.0 pending
-kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml CommunityMech:000119 f26fcecaf12917372e9f746f0950f17599befb4a2021d770d9a823b45dc383f3 4 3 100.0 pending
-kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml CommunityMech:000425 e7fb13a262a702bc0c79c7f00f7e2dae04cee374c32762e9c77f079d7bc623f4 1 0 65.0 pending
+kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml CommunityMech:000435 db5dd094bbd49fba2952851b1d8394c3b30d04cb08440f850ae04cc77614137d 2 0 60.0 reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml reviewed
+kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml CommunityMech:000274 5fa9fb489ff93f261f6e0d8d737057f511bfbba46fe3e08958e4cbb1eca42ed6 3 2 93.3 reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml reviewed
+kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml CommunityMech:000119 b6274bb4ad8beb9df16a81340ddbc536cdf94233e9e8961697a8423ec5a14a60 4 3 100.0 reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml reviewed
+kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml CommunityMech:000425 65986397aa530933ed3b2d65d9cf8110e96b30898c3458c1d024e98fa42a81b4 1 0 65.0 reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml needs_research
kb/communities/Mushroom_Spring_Hot_Spring_Phototrophic_Mat_Community.yaml CommunityMech:000260 d029a1a04c04b3f5c873e1a25697ba3628c41d392df218a9b0f0f4188eb83ab7 4 2 100.0 pending
kb/communities/NCycle_Bioflocculation_Model_Consortium.yaml CommunityMech:000126 81f621f5cdf360c7b9573ac9c8cd04a6e09fd84df217a912bb7bceaaed173acb 3 2 100.0 pending
kb/communities/NDC6_Psychrotolerant_Nitrogen_Removal_SynCom.yaml CommunityMech:000463 1a1c02d8b33165075608eba9bc482646843cecfe41a7a99c3d47f5ab9bbb5c97 1 0 55.0 pending
diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json
index 831877216..c0419701d 100644
--- a/reports/causal_graph_review/summary.json
+++ b/reports/causal_graph_review/summary.json
@@ -7,9 +7,9 @@
"records_without_nodes": 8,
"records_without_edges": 164,
"review_status_counts": {
- "needs_research": 25,
- "pending": 196,
- "reviewed": 239
+ "needs_research": 26,
+ "pending": 192,
+ "reviewed": 242
},
"structural_defects": [],
"network_audit": [
diff --git a/reports/causal_graph_review/validation-20261007-batch75.json b/reports/causal_graph_review/validation-20261007-batch75.json
new file mode 100644
index 000000000..f0bf78b57
--- /dev/null
+++ b/reports/causal_graph_review/validation-20261007-batch75.json
@@ -0,0 +1,1127 @@
+{
+ "base_commit": "3e844683b766944da3bd8fbec2308ecb7a0982c4",
+ "scope": [
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml"
+ ],
+ "reference_validator_version": "0.1.7",
+ "results": [
+ {
+ "check": "Mulberry_Distillers_Grains_Feed_Consortium-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Mulberry_Distillers_Grains_Feed_Consortium-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-strict.tsv",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-strict.log",
+ "log_sha256": "28a72f064e9711355d3f2e0ceeeeb5040db99af48624a0232cb9873f1383b167",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch75/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-batch75/Mulberry_Distillers_Grains_Feed_Consortium-strict.tsv\n"
+ },
+ {
+ "check": "Mulberry_Distillers_Grains_Feed_Consortium-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Mulberry_Distillers_Grains_Feed_Consortium-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-references.log",
+ "log_sha256": "a9cad469510890c9132349015524b9939600a1a4c2ceeac03471f830b557133e",
+ "output_tail": "Validating kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Mulberry_Distillers_Grains_Feed_Consortium-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-snippets.log",
+ "log_sha256": "5f0e8a5be45b94195ee5599498c60e06ff8db089c85d0bf23969aa37351ca96e",
+ "output_tail": "# 17 evidence snippets scanned across 1 files\n MATCH 17\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": "Mulberry_Distillers_Grains_Feed_Consortium-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Mulberry_Distillers_Grains_Feed_Consortium-rank.log",
+ "log_sha256": "eb112ef4d41f2cccbb7ac1195b2132c2199e3edcf57c2e7c7f06fc1a3050bcf8",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000435\",\n \"name\": \"Mulberry-Distillers Grains Feed A/B/C Fermentation Panel\",\n \"score\": 60.0,\n \"taxonomy\": 4,\n \"connected_taxa\": 4,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 2,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 3,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-strict.tsv",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-strict.log",
+ "log_sha256": "8c10c8ad85a4384ea47fb4152a1da1b88fae3333c360807d2fbc0a1787749f44",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch75/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-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-strict.tsv\n"
+ },
+ {
+ "check": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-references.log",
+ "log_sha256": "9671dfcd2e777fb142b8ffc80c1634f62c4686b22fdfd4fe914ca7d1e40bb709",
+ "output_tail": "Validating kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.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/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.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": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-snippets.log",
+ "log_sha256": "1835af07ebf0373785ca2d25de18c6984a3cbcfdec0d2610f1d8437504408710",
+ "output_tail": "# 10 evidence snippets scanned across 1 files\n MATCH 10\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n"
+ },
+ {
+ "check": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-rank.log",
+ "log_sha256": "582bc24ba7a022d46b0b23953ee08021753b90ce986694560c1880cdec0b3122",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000274\",\n \"name\": \"Multi-stage Anaerobic-Digestion SynCom-YSJ and SynCom-J\",\n \"score\": 93.3,\n \"taxonomy\": 3,\n \"connected_taxa\": 3,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J/2026-10-07T030930Z-codex-ff9867.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Multiomics_Corn_Straw_Degradation_SynCom-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Multiomics_Corn_Straw_Degradation_SynCom-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-strict.tsv",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-strict.log",
+ "log_sha256": "956574db99ae259f00ec470b31db5b12d244ec099c5bebd7be28825f95e4f30b",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch75/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-batch75/Multiomics_Corn_Straw_Degradation_SynCom-strict.tsv\n"
+ },
+ {
+ "check": "Multiomics_Corn_Straw_Degradation_SynCom-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Multiomics_Corn_Straw_Degradation_SynCom-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-references.log",
+ "log_sha256": "9fd373c6cad16381756971ffef28470a7f9fd88851b688eecaf8062a8cb2e07b",
+ "output_tail": "Validating kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Multiomics_Corn_Straw_Degradation_SynCom-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-snippets.log",
+ "log_sha256": "5f0e8a5be45b94195ee5599498c60e06ff8db089c85d0bf23969aa37351ca96e",
+ "output_tail": "# 17 evidence snippets scanned across 1 files\n MATCH 17\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": "Multiomics_Corn_Straw_Degradation_SynCom-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-rank.log",
+ "log_sha256": "836cbbfa7f4701f29b75f73558ffebca449d4eb3b1985217c4332565763778fe",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000119\",\n \"name\": \"Multiomics Corn Straw Degradation SynCom\",\n \"score\": 100.0,\n \"taxonomy\": 1,\n \"connected_taxa\": 1,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 4,\n \"downstream_edges\": 3,\n \"interaction_evidence\": 9,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [],\n \"path\": \"kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Multiomics_Corn_Straw_Degradation_SynCom-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Multiomics_Corn_Straw_Degradation_SynCom/2026-10-07T030930Z-codex-3c3e2c.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multiomics_Corn_Straw_Degradation_SynCom-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Multispecies_Probiotic_MV_Luteolin_Consortium-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Multispecies_Probiotic_MV_Luteolin_Consortium-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-strict.tsv",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-strict.log",
+ "log_sha256": "c690337272c7f4c6dd6c8aab97ced58ca8f1e21c9d723cd5a5ef446a33653dd6",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch75/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-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-strict.tsv\n"
+ },
+ {
+ "check": "Multispecies_Probiotic_MV_Luteolin_Consortium-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Multispecies_Probiotic_MV_Luteolin_Consortium-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-references.log",
+ "log_sha256": "c4fd4336b0456fa2523283e15cdf186619d64f6221e5b98acadc03c251a1126e",
+ "output_tail": "Validating kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Multispecies_Probiotic_MV_Luteolin_Consortium-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-snippets.log",
+ "log_sha256": "f6a9767549613d09f19faecc37e6a5d220b945492a8933512926cd4840c6406e",
+ "output_tail": "# 22 evidence snippets scanned across 1 files\n MATCH 21\n RENDERING 1\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 1 kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml\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": "Multispecies_Probiotic_MV_Luteolin_Consortium-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-rank.log",
+ "log_sha256": "ec94299ca9fbf0184c42d15f4a04b4fe7edd9fb80f3a344d75a3124b85685d3c",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000425\",\n \"name\": \"CICC Three-Strain Probiotic M-MV Luteolin Consortium\",\n \"score\": 65.0,\n \"taxonomy\": 3,\n \"connected_taxa\": 3,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 1,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 3,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\"\n ],\n \"path\": \"kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Multispecies_Probiotic_MV_Luteolin_Consortium-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Multispecies_Probiotic_MV_Luteolin_Consortium/2026-10-07T030930Z-codex-80c459.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/Multispecies_Probiotic_MV_Luteolin_Consortium-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "inventory",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "reports/causal_graph_review/build_inventory.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/inventory.log",
+ "log_sha256": "834ee4d7b521dc1f865fdf6c5b7ed9399581291aef5bc1e0ad88dccc863b30c3",
+ "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\": 620,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 164,\n \"review_status_counts\": {\n \"needs_research\": 26,\n \"pending\": 192,\n \"reviewed\": 242\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-batch75/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-batch75/rank-all.log",
+ "log_sha256": "824a509746429c878f433d74547ef327b14df6858594371e33c408ec872956e3",
+ "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-batch75/render.log",
+ "log_sha256": "4ad984739666d8518372c513bf3374c032c671211d499bebf77492d0fed62ea4",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch75/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch75/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch75/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-batch75/render-repeat.log",
+ "log_sha256": "4ad984739666d8518372c513bf3374c032c671211d499bebf77492d0fed62ea4",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch75/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch75/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch75/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch75/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-batch74')),('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-batch75/connectivity-survey.log",
+ "log_sha256": "52c3470443d3c017a6c5f5ffed2fbb43348feee7fe8afbea853d97b3c39e9ed4",
+ "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 393, \"mixed\": 125, \"community_level_only\": 268, \"taxa\": 1511, \"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_batch73.py",
+ "tests/test_causal_review_batch74.py",
+ "tests/test_causal_review_batch75.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-batch75/regressions.log",
+ "log_sha256": "bda6abe924a92ba34d14f4da65dc60359b1e4496234851a425b4140dfecd0061",
+ "output_tail": "........................................................................ [ 10%]\n........................................................................ [ 21%]\n........................................................................ [ 32%]\n........................................................................ [ 43%]\n........................................................................ [ 53%]\n........................................................................ [ 64%]\n........................................................................ [ 75%]\n........................................................................ [ 86%]\n........................................................................ [ 96%]\n..................... [100%]\n669 passed in 195.80s (0:03:15)\n"
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch75.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/black.log",
+ "log_sha256": "1a56c7cd8457fd05d978cfbd139d7bfd86e86acaa9b57668e718ef8bccc0cf48",
+ "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n1 file would be left unchanged.\n"
+ },
+ {
+ "check": "ruff",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff",
+ "check",
+ "tests/test_causal_review_batch75.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/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-batch75/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-batch75.yaml').read_text())\nmanifest=json.loads(P('/private/tmp/communitymech-batch75/primary-manifest.json').read_text())\nsources={v['reference']:''.join(P(v['extracted_body']).read_text().split()) for v in manifest.values()}\nfor p,h in ledger['primary_artifacts'].items():\n assert hashlib.sha256(P(p).read_bytes()).hexdigest()==h\nfresh=0\nfor row in ledger['records']:\n doc=yaml.safe_load(P(row['path']).read_text())\n for n in doc['ecological_interactions']:\n for e in n['evidence']:\n assert ''.join(e['snippet'].split()) in sources[e['reference']]\n fresh+=1\nassert fresh==19\nassert sum(len(r['node_decisions']) for r in ledger['records'])==10\nassert sum(len(r['edges_before']) for r in ledger['records'])==5\nassert sum(len(r['edges_after']) for r in ledger['records'])==5\nassert sum(r['curation_events_added'] for r in ledger['records'])==3\nassert ledger['edison']['provider_submissions']==0\nprint(json.dumps(dict(automatically_primary_matched=fresh,new_nodes_or_arrows=0,complete_primary_main_texts_read=1,abstract_only_sources=3,separate_supplements_or_original_figure_pixels_inspected=False)))\n"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/primary-graph-proof.log",
+ "log_sha256": "a4258fa837d5b1a749b002282b11c5d5f53d5cafbdda1acae1b1a84fcf1c870a",
+ "output_tail": "{\"automatically_primary_matched\": 19, \"new_nodes_or_arrows\": 0, \"complete_primary_main_texts_read\": 1, \"abstract_only_sources\": 3, \"separate_supplements_or_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_batch75.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/focused-final.log",
+ "log_sha256": "a26e7b3c8ec507f89b355e2d9db83874eb55b037aa9705adf220ac3ae6ea3e16",
+ "output_tail": "................ [100%]\n16 passed in 20.14s\n"
+ }
+ ],
+ "limitations": [
+ "Pre-paper baseline covered460 records and920 caches across both roots, including ignored/hidden YAML. All10 nodes and5 arrows reviewed and retained. Three repaired records/histories; mulberry byte-for-byte unchanged with no manufactured event.",
+ "Primary abstracts read for mulberry, digestion and corn straw. Their metadata lists subscription-required full text; no claim that controls are absent or that no full copy exists anywhere. Full probiotic primary main body, embedded tables and captions read; separate supplements, original figure pixels and raw data not audited.",
+ "Every graph quotation independently matches fresh primary XML/abstract and an existing cache using whitespace-only normalization. Cache matching is not entailment. All920 caches and raw non-graph blocks preserved, not recertified; no complete primary paper uploaded.",
+ "Mulberry panel A/B/C boundaries, true-protein/ABTS evidence and genus-level quality correlation are already bounded. Existing1103/1104 repairs preserved; no arbitrary arrow added to a valid zero-edge graph.",
+ "Preserve YSJ22% versus J8% methane gains over control and both-consortium1.6-fold propionate reduction. Metagenomics alone is not expression, direct electron flux or obligate syntrophy. Two proposed mediation arrows remain HYPOTHESIZED; competition is not established by selection. Preserve native-community context and function/stability trade-off.",
+ "Corn-straw fraction conversions34.91%,45.94%,23.34% and three component-to-whole links remain. Proteomic association is not enzyme necessity, fraction percentages are not additive yield, and joint conversion is not reciprocal fitness. Lignin-barrier mediation remains HYPOTHESIZED; unusual source wording is not silently repaired.",
+ "Probiotic growth and positive partner-supernatant interventions remain. Molecular nutritional exchange and absence of member-specific antagonism are not established by aggregate co-culture counts. Existing MsrA discussion and category1065 fix retained. Missing vesicle outcome stays needs_research in1629.",
+ "One-community Edison LITERATURE dry run for000425 complete, query10231 characters, zero submissions/credits. Scoped paid approval question unanswered; no inferred permission and no extension. Previous denied/pending scopes remain unchanged.",
+ "Dedup scanned911 all-state issue titles/bodies and26 matching local files with ignored/hidden-inclusive search and explicit git/docs/site/cache exclusions. Matching1104/1103/1065/310/183 bodies read. No exhaustive PR-comment audit or global source-absence claim.",
+ "Repair1626-1628 stays OPEN until protected-main merge. Research1629 and non-graph metadata1630 remain OPEN afterward; existing183 membership work is not duplicated. Self-adversarial COMMENT is not independent approval; corpus review unfinished.",
+ "Exact HTML-description parser and repeat-render checks, not browser screenshots. Post-commit docs-current is separate."
+ ],
+ "superseded_checks": [
+ {
+ "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_batch73.py",
+ "tests/test_causal_review_batch74.py",
+ "tests/test_causal_review_batch75.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-batch75/superseded-regressions.log",
+ "log_sha256": "c348f33d7efdbde11a3f51a4646bfdd44d801adf02552e296e6e0457c4eafc26",
+ "output_tail": "........................................................................ [ 10%]\n........................................................................ [ 21%]\n........................................................................ [ 32%]\n........................................................................ [ 43%]\n........................................................................ [ 53%]\n........................................................................ [ 64%]\n........................................................................ [ 75%]\n........................................................................ [ 86%]\n........................................................................ [ 96%]\n..................... [100%]\n669 passed in 219.66s (0:03:39)\n",
+ "superseded_reason": "Test-only strict=True added after Ruff B905. Full regressions and lint rerun on final test source."
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch75.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/superseded-black.log",
+ "log_sha256": "1a56c7cd8457fd05d978cfbd139d7bfd86e86acaa9b57668e718ef8bccc0cf48",
+ "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n1 file would be left unchanged.\n",
+ "superseded_reason": "Test-only strict=True added after Ruff B905. Full regressions and lint rerun on final test source."
+ },
+ {
+ "check": "ruff",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff",
+ "check",
+ "tests/test_causal_review_batch75.py"
+ ],
+ "exit_code": 1,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch75/superseded-ruff.log",
+ "log_sha256": "de3d9ac0fc90535a1b2fa308d50620617554dee2d4f8f0136583827ef666a32c",
+ "output_tail": "B905 `zip()` without an explicit `strict=` parameter\n --> tests/test_causal_review_batch75.py:57:26\n |\n55 | _, _, docs = records()\n56 | cellulose, hemi, lignin, total = docs[2][\"ecological_interactions\"]\n57 | for node, percent in zip([cellulose, hemi, lignin], [\"34.91%\", \"45.94%\", \"23.34%\"]):\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n58 | assert percent in node[\"description\"]\n59 | assert node[\"downstream\"][0][\"target\"] == total[\"name\"]\n |\nhelp: Add explicit value for parameter `strict=`\n\nFound 1 error.\nNo fixes available (1 hidden fix can be enabled with the `--unsafe-fixes` option).\n",
+ "superseded_reason": "Test-only strict=True added after Ruff B905. Full regressions and lint rerun on final test source."
+ }
+ ],
+ "snippet_counts_by_record": {
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml": {
+ "MATCH": 17,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml": {
+ "MATCH": 10,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml": {
+ "MATCH": 17,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml": {
+ "MATCH": 21,
+ "RENDERING": 1,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ }
+ },
+ "unchanged_raw_blocks": 57,
+ "unchanged_record_files": 457,
+ "unchanged_cache_files": 920,
+ "edison": {
+ "required_for_this_repair": false,
+ "required_for_deferred_extension": true,
+ "target": "CommunityMech:000425",
+ "dry_run_complete": true,
+ "query_chars": 10231,
+ "job": "LITERATURE",
+ "provider_submissions": 0,
+ "credits_spent": 0,
+ "authorization": "Scoped async question unanswered; no inferred approval.",
+ "rationale": "Existing growth structure repaired; missing vesicle outcome awaits authorized research and report inspection."
+ },
+ "primary_artifacts": {
+ "/private/tmp/communitymech-batch75/corn-metadata.json": "807121c91a3fef32fc2c2bbcc504c942d501b06131b08624580ab3e91f4b8fba",
+ "/private/tmp/communitymech-batch75/corn-primary.txt": "e2e0c8dce74cd049aae09d3e8332220893fd136ddef3865701bf807dd998eb11",
+ "/private/tmp/communitymech-batch75/digestion-metadata.json": "9c90a74e3309834ed024b4f6108aada50a92500e36bde61528597ca3815d8a3a",
+ "/private/tmp/communitymech-batch75/digestion-primary.txt": "6f60f5e4a765efa2d6fa1866d38e736c02f441d184174a4b862463f8573de054",
+ "/private/tmp/communitymech-batch75/edison-vesicles/Multispecies_Probiotic_MV_Luteolin_Consortium-edison-literature-causal-meta.yaml": "0d43985a8d0ae6ed0f1cd65f2f4e35c96fa4ce6ab906761e886993ae184bb86e",
+ "/private/tmp/communitymech-batch75/mulberry-metadata.json": "d3536ecc2078106131ed08f5c94fa6aa586b9c71b50cd72973fc852f0ab0d731",
+ "/private/tmp/communitymech-batch75/mulberry-primary.txt": "c26591dc587c2bfa7a78b5c40ef43be589e7201e9f7458b1de5e59c2e6cd4d9b",
+ "/private/tmp/communitymech-batch75/vesicles-metadata.json": "502464d1fe38fb21025ad1fcb83357c52254b4fe7fe95d12f833067523386d56",
+ "/private/tmp/communitymech-batch75/vesicles-primary.txt": "fe8b4a0b0bde31af4b6a7298517380f4aa4c25fdd49f54795137893654f8e318",
+ "/private/tmp/communitymech-batch75/vesicles-primary.xml": "7d0323ea927100fd8b0ee5b75a2d4245317a85966dfd08fdc2eac4f494a7a49d",
+ "/private/tmp/communitymech-batch75/primary-manifest.json": "8278ccb1d5f42d1e3d29e056d486fd326791e706943a60fb8428f99d999ea6ba",
+ "/private/tmp/communitymech-batch75/baseline.json": "f6b347e62b5a14ff0f6f5bd17671fe7e29024418314a8d1a89727477186a8e4a"
+ },
+ "network_delta": {
+ "existing_findings_preserved": 44,
+ "added_findings": {},
+ "removed_findings": {},
+ "interpretation": "All44 baseline warnings preserved exactly. Community scope remains aggregate, not resolved member-specific activity. No taxonomy or auditor-rule changes."
+ },
+ "render_determinism": true,
+ "published_description_coverage": {
+ "pages": 456,
+ "nodes": 1433,
+ "arrows": 612
+ },
+ "participant_census": {
+ "measurements": {
+ "baseline": {
+ "records": 460,
+ "with_community_level": 393,
+ "mixed": 125,
+ "community_level_only": 268,
+ "taxa": 1511,
+ "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": 0,
+ "mixed": 0,
+ "community_level_only": 0,
+ "taxa": 0,
+ "credited_solely_by_the_rule": 0
+ },
+ "interpretation": "No scope-count change, taxonomy edit, or auditor-rule change. Aggregate outcomes do not establish member-resolved activity."
+ },
+ "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": 620,
+ "records_without_nodes": 8,
+ "records_without_edges": 164,
+ "review_status_counts": {
+ "needs_research": 26,
+ "pending": 192,
+ "reviewed": 242
+ },
+ "structural_defects": []
+ },
+ "tested_file_sha256": {
+ "reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml": "ab80d08a11b594625a0e0458b089ccab663f00def93cee6bd12c59e2b9f9d598",
+ "tests/test_causal_review_batch75.py": "22a96d796cbfe7178fbe5215773f81d1fd6b999105774d9051d478e6870b20fe",
+ "kb/communities/Mulberry_Distillers_Grains_Feed_Consortium.yaml": "db5dd094bbd49fba2952851b1d8394c3b30d04cb08440f850ae04cc77614137d",
+ "kb/communities/Multi_stage_Anaerobic_Digestion_SynCom_YSJ_and_SynCom_J.yaml": "5fa9fb489ff93f261f6e0d8d737057f511bfbba46fe3e08958e4cbb1eca42ed6",
+ "kb/communities/Multiomics_Corn_Straw_Degradation_SynCom.yaml": "b6274bb4ad8beb9df16a81340ddbc536cdf94233e9e8961697a8423ec5a14a60",
+ "kb/communities/Multispecies_Probiotic_MV_Luteolin_Consortium.yaml": "65986397aa530933ed3b2d65d9cf8110e96b30898c3458c1d024e98fa42a81b4",
+ "reports/causal_graph_review/README.md": "c57657d522ef8d7f6ccae3e83b0d96a7331fe5b94d89bdd44477a6421f6eca1b"
+ },
+ "status": "verified_assay_boundary_graph_review",
+ "test_formatting_receipt": {
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "/private/tmp/communitymech-causal-batch75/tests/test_causal_review_batch75.py"
+ ],
+ "exit_code": 0,
+ "output": "reformatted /private/tmp/communitymech-causal-batch75/tests/test_causal_review_batch75.py\n\nAll done! \u2728 \ud83c\udf70 \u2728\n1 file reformatted.\n",
+ "ast_equivalent": true,
+ "pre_sha256": "e8cd08fab5036008d56cf9aca4ba7e79ed13cf46868454b07f55d861924417b6",
+ "post_sha256": "22a96d796cbfe7178fbe5215773f81d1fd6b999105774d9051d478e6870b20fe",
+ "note": "Black wraps strict=True test line only. Same test AST as full regression run; focused final rerun uses formatted bytes.",
+ "receipt_sha256": "98584e3a1b4d6e5468bd86212b0e29dcbd47e685bb722a5c7fd8352e30f46675"
+ },
+ "pre_research_baseline": {
+ "base_commit": "3e844683b766944da3bd8fbec2308ecb7a0982c4",
+ "base_tree": "eb93c8f206d74c27d93ad12eebbeafd3b66331d7",
+ "research_worktree": "/private/tmp/communitymech-causal-batch74",
+ "checks": [
+ {
+ "name": "rank",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_code": 0,
+ "log": "/private/tmp/communitymech-batch75/baseline-rank.log",
+ "sha256": "4c582286e34af3cd9d52a0aaf978ab1178bf0f007fb9731ed24962da695ec88a",
+ "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-batch75/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-batch75/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-batch75/baseline-downstream.log",
+ "sha256": "a81eeb914f065fa181b3868143298dcc07a1352f77b8e567e9370bc8cbb87468",
+ "output_tail": ":\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:267: downstream:\nkb/communities/Honeybee_Core20_Defined_Microbiota.yaml:71: downstream:\nkb/communities/Honeybee_Core20_Defined_Microbiota.yaml:101: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:207: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:249: downstream:\nkb/communities/Polaromonas_Vanadium_Reduction_Community.yaml:281: downstream:\nkb/communities/Polaromonas_Vanadium_Reduction_Community.yaml:401: downstream:\nkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml:135: downstream:\nkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml:177: downstream:\nkb/communities/Synechococcus_Saccharomyces_SPC.yaml:126: downstream:\nkb/communities/Synechococcus_Saccharomyces_SPC.yaml:161: downstream:\nkb/communities/Rumen_Substrate_Adapted_Lignocellulose_Enrichment_Consortia.yaml:328: downstream:\nkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml:223: downstream:\nkb/communities/Clostridium_Cellulovorans_Methanosarcina_Cellulose_Methane_Coculture.yaml:157: downstream:\nkb/communities/Clostridium_Cellulovorans_Methanosarcina_Cellulose_Methane_Coculture.yaml:221: downstream:\nkb/communities/PET_Artificial_FourSpecies_Degradation_Consortium.yaml:190: downstream:\nkb/communities/PET_Artificial_FourSpecies_Degradation_Consortium.yaml:233: downstream:\nkb/communities/PET_Artificial_FourSpecies_Degradation_Consortium.yaml:273: downstream:\nkb/communities/PET_Artificial_FourSpecies_Degradation_Consortium.yaml:298: downstream:\nkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml:342: downstream:\nkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml:381: downstream:\nkb/communities/Lake_Washington_Methane_Oxygen_Methylotroph_Community.yaml:342: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\n"
+ }
+ ],
+ "baseline_sha256": "f6b347e62b5a14ff0f6f5bd17671fe7e29024418314a8d1a89727477186a8e4a"
+ },
+ "reference_validator_caveat": "All four full-record reference validators exit0. CLI Total checks counts issues, not executed checks. All19 graph quotations independently match fresh primary XML/abstract and selected existing caches. Cache matching is not entailment. Three sources abstract-only; all920 caches unchanged, not recertified. Prior batch73 gallium non-graph reference exception remains outside this batch."
+}
diff --git a/tests/test_causal_review_batch75.py b/tests/test_causal_review_batch75.py
new file mode 100644
index 000000000..ad43778b3
--- /dev/null
+++ b/tests/test_causal_review_batch75.py
@@ -0,0 +1,131 @@
+"""Preserve measured outcomes without promoting inferred mechanisms to facts."""
+
+import hashlib
+from pathlib import Path
+
+import yaml
+
+ROOT = Path(__file__).resolve().parents[1]
+LEDGER = ROOT / "reports/causal_graph_review/decisions/20261007-four-records-batch75.yaml"
+
+
+def records():
+ ledger = yaml.safe_load(LEDGER.read_text())
+ rows = ledger["records"]
+ docs = [yaml.safe_load((ROOT / row["path"]).read_text()) for row in rows]
+ return ledger, rows, docs
+
+
+def test_sparse_feed_graph_is_reviewed_unchanged():
+ _, rows, docs = records()
+ row = rows[0]
+ assert row["status"] == "reviewed" and row["outcome"] == "unchanged"
+ assert row["record_sha256"] == row["original_sha256"]
+ assert row["curation_events_added"] == 0 and row["history_files"] == []
+ nodes = docs[0]["ecological_interactions"]
+ assert len(nodes) == 2 and all("downstream" not in n for n in nodes)
+ assert nodes[1]["evidence"][0]["supports"] == "PARTIAL"
+
+
+def test_digestion_preserves_treatment_comparators_and_qualifies_mediation():
+ _, _, docs = records()
+ staged, transfer, selection = docs[1]["ecological_interactions"]
+ for term in ["22%", "8%", "Both consortia", "1.6-fold", "native microbiome"]:
+ assert term in staged["description"]
+ assert staged["evidence"][0]["supports"] == "PARTIAL"
+ assert staged["evidence"][1]["supports"] == "SUPPORT"
+ assert staged["downstream"][0]["target"] == transfer["name"]
+ assert transfer["downstream"][0]["target"] == selection["name"]
+ for node in [staged, transfer]:
+ assert node["downstream"][0]["description"].startswith("HYPOTHESIZED -")
+
+
+def test_metagenomic_potential_is_not_expression_syntrophy_or_competition():
+ _, _, docs = records()
+ _, transfer, selection = docs[1]["ecological_interactions"]
+ assert transfer["name"].startswith("Putative")
+ assert "does not establish transcription" in transfer["description"]
+ assert "direct electrical transfer" in transfer["description"]
+ assert "interaction_type" not in transfer and "interaction_type" not in selection
+ assert "SynCom-J produced a more robust network" in selection["description"]
+ assert "not universally greater network stability" in selection["description"]
+
+
+def test_corn_fraction_contributions_remain_without_mutualism():
+ _, _, docs = records()
+ cellulose, hemi, lignin, total = docs[2]["ecological_interactions"]
+ for node, percent in zip(
+ [cellulose, hemi, lignin], ["34.91%", "45.94%", "23.34%"], strict=True
+ ):
+ assert percent in node["description"]
+ assert node["downstream"][0]["target"] == total["name"]
+ assert all("interaction_type" not in n for n in [cellulose, hemi, lignin, total])
+ assert hemi["evidence"][1]["supports"] == "PARTIAL"
+ assert "not a necessity test" in hemi["evidence"][1]["explanation"]
+ assert hemi["evidence"][2]["supports"] == "SUPPORT"
+ assert "HYPOTHESIZED" in lignin["downstream"][0]["description"]
+ assert "not additive whole-straw yield" in total["description"]
+
+
+def test_probiotic_growth_is_retained_and_missing_outcome_stays_unresolved():
+ ledger, rows, docs = records()
+ (node,) = docs[3]["ecological_interactions"]
+ for term in ["higher viable counts", "1%", "promoted monoculture growth", "PARTIAL"]:
+ assert term in node["description"]
+ assert "does not establish absence of antagonism" in node["description"]
+ assert [e["supports"] for e in node["evidence"]] == ["SUPPORT", "PARTIAL", "SUPPORT"]
+ assert docs[3]["discussions"][0]["discussion_id"] == "cicc_mmv_msra_causality_unresolved"
+ assert rows[3]["status"] == "needs_research"
+ assert ledger["unresolved_research_issues"] == [1629]
+ assert ledger["unresolved_non_graph_issues"] == [1630]
+ assert ledger["edison"]["target"] == "CommunityMech:000425"
+ assert ledger["edison"]["dry_run_complete"] is True
+ assert ledger["edison"]["provider_submissions"] == 0
+ assert "downstream" not in node
+
+
+def test_every_existing_node_and_arrow_is_accounted_for():
+ ledger, rows, docs = records()
+ assert sum(len(r["node_decisions"]) for r in rows) == 10
+ assert sum(len(r["edges_before"]) for r in rows) == 5
+ assert sum(len(r["edges_after"]) for r in rows) == 5
+ assert (
+ ledger["primary_graph_snippet_count"] == ledger["cache_matched_graph_snippet_count"] == 19
+ )
+ assert all(c["independent_primary_match"] for c in ledger["snippet_checks"])
+ for row, doc in zip(rows, docs, strict=True):
+ renames = row["renamed_nodes"]
+ original = {
+ (renames.get(e["source"], e["source"]), renames.get(e["target"], e["target"]))
+ for e in row["edges_before"]
+ }
+ assert original == {(e["source"], e["target"]) for e in row["edges_after"]}
+ assert row["removed_edge_decisions"] == []
+ names = {n["name"] for n in doc["ecological_interactions"]}
+ assert names == {n["node"] for n in row["node_decisions"]}
+ assert all(
+ a.split("#", 1)[1] in names
+ for d in doc.get("discussions", [])
+ for a in d["attaches_to"]
+ if a.startswith("ecological_interactions#")
+ )
+
+
+def test_record_hashes_and_only_changed_record_histories_match():
+ ledger, rows, docs = records()
+ assert ledger["independent_approval"] is False
+ assert sum(row["curation_events_added"] for row in rows) == 3
+ for row, doc in zip(rows, docs, strict=True):
+ assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"]
+ changed = row["outcome"] == "changed"
+ assert row["curation_events_added"] == len(row["history_files"]) == int(changed)
+ if changed:
+ assert row["allowed_changed_fields"] == [
+ "curation_history",
+ "discussions",
+ "ecological_interactions",
+ ]
+ assert doc["curation_history"][-1]["llm_assisted"] is True
+ else:
+ assert row["allowed_changed_fields"] == []
+ assert all((ROOT / p).exists() for p in row["history_files"])