The MDSC degraded PGM O-glycans, PGM plus BSM O-glycans, and PGM plus added sialylated glycans in sequential batch culture, but showed limited growth and only minimal O-glycan degradation when BSM was supplied alone.
The MDSC rapidly degrades PGM and mixed PGM/BSM O-glycans and degrades added sialylated glycans. BSM alone supports little growth and only minimal O-glycan degradation, while its low-abundance identified N-glycans are completely degraded. Added sialylated structures show different early rates and some remain detectable at120 h. These community substrate-processing outcomes do not identify the donor-recipient fluxes implied by a pairwise cross-feeding mechanism.
-
HPLC measurements showed that PGM, BSM, PGM/BSM, and PGM plus sialylated glycans yielded distinct extracellular metabolite profiles, including condition-dependent changes in acetate, propionate, formate, and ethanol after community stabilization.
+
HPLC measurements showed that PGM, BSM, PGM/BSM, and PGM plus sialylated glycans yielded distinct extracellular metabolite profiles, including condition-dependent changes in acetate, propionate, formate, and ethanol after community stabilization. These are extracellular pool profiles, not measured transfer between particular members. Low metabolite output on BSM may include yeast-extract fermentation; an increase in metabolite concentration is not proof of production exclusively from mucin.
@@ -1247,7 +1239,7 @@
Associated Datasets
- Knowledge gaps & discussions (1)
+ Knowledge gaps & discussions (2)
@@ -1262,6 +1254,21 @@
+
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which selective mechanisms explain the measured community responses?
+
+
Preserve the experimentally altered mucin regimes and positive composition, glycan and metabolite responses. The retained composition-to-degradation mechanism is PARTIAL because composition and substrate accessibility change together. Do not confuse failure to degrade most BSM O-glycans with failure to degrade its N-glycans, or A.muciniphila abundance with demonstrated sialic-acid utilization. Monoculture BSM plus threonine did not restore A.muciniphila growth. Existing unresolved pairwise-flux discussion and prior957/958/959 repairs remain intact.
+
+
Attaches to: ecological_interactions#Mucin-Type-Dependent MDSC Restructuring, ecological_interactions#Substrate-Dependent Mucin Glycan Degradation, ecological_interactions#Mucin-Type-Dependent Fermentation Profile
+
+
+
+
@@ -1767,7 +1774,7 @@
Evidence
(function() {
var intId = "interaction:0";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -1795,7 +1802,7 @@
Evidence
(function() {
var intId = "interaction:1";
- var intType = "CROSS_FEEDING";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -1823,7 +1830,7 @@
Evidence
(function() {
var intId = "interaction:2";
- var intType = "CROSS_FEEDING";
+ var intType = "UNKNOWN";
var metabolites = [];
diff --git a/history/records/Model_Cyanobacterial_Consortia_Core_Microbiome/2026-10-07T024303Z-codex-050bf5.yaml b/history/records/Model_Cyanobacterial_Consortia_Core_Microbiome/2026-10-07T024303Z-codex-050bf5.yaml
new file mode 100644
index 000000000..a2fe2bfdd
--- /dev/null
+++ b/history/records/Model_Cyanobacterial_Consortia_Core_Microbiome/2026-10-07T024303Z-codex-050bf5.yaml
@@ -0,0 +1,26 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml
+ slug: Model_Cyanobacterial_Consortia_Core_Microbiome
+session:
+ id: 2026-10-07T024303Z-codex-050bf5
+ timestamp: '2026-10-07T02:43:03Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1620
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain putative plasmid enrichment; symbiotic mechanism is PARTIAL, not measured
+ mutualism.; Retain genomic functional potential without asserting measured cross-feeding.;
+ Correct operational-core and host/source boundaries; remove two analytical-workflow arrows.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
diff --git a/history/records/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community/2026-10-07T024303Z-codex-225f8a.yaml b/history/records/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community/2026-10-07T024303Z-codex-225f8a.yaml
new file mode 100644
index 000000000..07d9b4616
--- /dev/null
+++ b/history/records/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community/2026-10-07T024303Z-codex-225f8a.yaml
@@ -0,0 +1,28 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml
+ slug: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+session:
+ id: 2026-10-07T024303Z-codex-225f8a
+ timestamp: '2026-10-07T02:43:03Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1621
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain toxic potential and production-to-mitigation link, not exclusive inhibition.;
+ Retain measured formaldehyde lowering; recipient rescue remains incomplete.; Correct methionine
+ direction and preserve two condition-specific positive growth assays, not autonomous mutualism.;
+ Bound resource competition using PCA, supplement and spent-medium controls; remove engineering-workflow
+ arrow.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
diff --git a/history/records/Moss_Microbe_Complex_Regolith_Biofertilizer/2026-10-07T024303Z-codex-ab7b96.yaml b/history/records/Moss_Microbe_Complex_Regolith_Biofertilizer/2026-10-07T024303Z-codex-ab7b96.yaml
new file mode 100644
index 000000000..52278f24d
--- /dev/null
+++ b/history/records/Moss_Microbe_Complex_Regolith_Biofertilizer/2026-10-07T024303Z-codex-ab7b96.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml
+ slug: Moss_Microbe_Complex_Regolith_Biofertilizer
+session:
+ id: 2026-10-07T024303Z-codex-ab7b96
+ timestamp: '2026-10-07T02:43:03Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1622
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain reported colonization facilitation with PARTIAL mediation arrow.; Preserve
+ treatment gains; remove unsupported reciprocal-fitness classification and shared-outcome
+ arrow.; Retain metabolite accumulation, not traced cross-feeding or demonstrated growth
+ mediation.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
diff --git a/history/records/Mucin_Glycan_MDSC_Synthetic_Gut_Community/2026-10-07T024304Z-codex-132d35.yaml b/history/records/Mucin_Glycan_MDSC_Synthetic_Gut_Community/2026-10-07T024304Z-codex-132d35.yaml
new file mode 100644
index 000000000..bbad2f0ae
--- /dev/null
+++ b/history/records/Mucin_Glycan_MDSC_Synthetic_Gut_Community/2026-10-07T024304Z-codex-132d35.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml
+ slug: Mucin_Glycan_MDSC_Synthetic_Gut_Community
+session:
+ id: 2026-10-07T024304Z-codex-132d35
+ timestamp: '2026-10-07T02:43:04Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1623
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain causal substrate response; qualify composition-to-degradation mediation.;
+ Preserve O-glycan versus N-glycan and residual-added-glycan distinctions without claiming
+ resolved cross-feeding.; Retain measured metabolite profiles and prior analyte fix; pool
+ changes are not transfer flux.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
diff --git a/kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml b/kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml
index 76474d139..c3847c3aa 100644
--- a/kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml
+++ b/kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml
@@ -109,22 +109,12 @@ taxonomy:
forming a 25-species core microbiome
explanation: Supports the recurrent core noncyanobacterial membership.
ecological_interactions:
-- name: Plasmid-Mediated Cyanobacteria-Heterotroph Symbiosis
- description: Core noncyanobacterial species are significantly enriched in
- plasmids, and plasmid-encoded functions are suggested to mediate symbiotic
- interactions with the cyanobacterial hosts.
- interaction_type: MUTUALISM
+- name: Putative Plasmid Functions in the Cyanobacterial Core Microbiome
+ description: PARTIAL - Core microbiome MAGs are enriched in putative plasmid contigs carrying transport, carbohydrate-metabolism
+ and signaling functions. Cobinning assigns plasmids to MAGs and 98% of predicted plasmids were not circularized.
+ Their contribution to phototroph-heterotroph establishment or maintenance is HYPOTHESIZED from genomic content,
+ not demonstrated plasmid transfer, curing, reciprocal fitness or metabolite flux.
scope: COMMUNITY_LEVEL
- source_taxon:
- preferred_term: core noncyanobacterial heterotrophs
- term:
- id: NCBITaxon:2
- label: Bacteria
- target_taxon:
- preferred_term: model cyanobacterial hosts
- term:
- id: NCBITaxon:1117
- label: Cyanobacteriota
biological_processes:
- preferred_term: interspecies interaction between organisms
term:
@@ -132,17 +122,17 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
evidence:
- reference: PMID:40626910
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
- snippet: core species showed significant enrichment of plasmids, and functions
- encoded on plasmids suggested plasmid-mediated roles in symbiotic interactions
- explanation: Supports plasmid-mediated symbiotic functions in the core consortium.
+ snippet: core species showed significant enrichment of plasmids, and functions encoded on plasmids suggested
+ plasmid-mediated roles in symbiotic interactions
+ explanation: Supports plasmid enrichment and proposed symbiotic roles, not experimentally demonstrated mutual
+ benefit.
- name: Core Micronutrient and Anoxygenic Photosynthesis Functions
- description: The 25-species core microbiome is statistically enriched for
- micronutrient biosynthesis, metabolite transport, and anoxygenic
- photosynthesis functions, indicating shared community-level metabolic
- contributions across consortia.
- interaction_type: CROSS_FEEDING
+ description: Core microbiome MAGs are statistically enriched in micronutrient biosynthesis, membrane transport
+ and anoxygenic photosynthesis potential; 20 of 25 core MAGs encode anoxygenic photosystem components. These
+ are genomic capabilities. Cross-feeding of costly cofactors or cyanobacterial products is HYPOTHESIZED, not
+ measured expression, transferred metabolites or partner-specific growth benefit.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: vitamin biosynthetic process
@@ -161,37 +151,39 @@ ecological_interactions:
- reference: PMID:40626910
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: core microbiome functionalities in micronutrient biosynthesis,
- metabolite transport, and anoxygenic photosynthesis
- explanation: Supports the curated set of shared functional categories.
-- name: Host- and Inoculum-Independent Core Recruitment
- description: Despite varying cyanobacterial host species and freshwater inoculum
- sources, the 108 consortia converged on the same noncyanobacterial core,
- indicating reproducible cyanobacterium-driven recruitment.
- interaction_type: COLONIZATION_FACILITATION
+ snippet: core microbiome functionalities in micronutrient biosynthesis, metabolite transport, and anoxygenic
+ photosynthesis
+ explanation: Supports the functional-enrichment analysis; encoded potential does not demonstrate exchange.
+- name: Reproducible Core Recruitment Across Hosts and Inocula
+ description: 'Among 108 retained consortia, 25 species met an operational core definition: occurrence with at
+ least four host strains and at least two source environments under replicated criteria. Individual core species
+ occurred in 18.5%-68.5% of samples, not universally. Communities stabilized and showed broad convergence, while
+ both host strain and inoculum significantly affected composition. Host-driven facilitation is PARTIAL because
+ cyanobacteria-free controls were absent, leaving medium and laboratory selection unresolved.'
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: interspecies interaction between organisms
term:
id: GO:0044419
label: biological process involved in interspecies interaction between organisms
- downstream:
- - target: Core Micronutrient and Anoxygenic Photosynthesis Functions
- description: Reproducible 25-species core recruitment made it possible to
- statistically validate shared micronutrient-biosynthesis, metabolite-
- transport, and anoxygenic-photosynthesis functions in the core microbiome.
- - target: Plasmid-Mediated Cyanobacteria-Heterotroph Symbiosis
- description: The recruited core species were significantly enriched in plasmids
- whose encoded functions suggested plasmid-mediated cyanobacteria-heterotroph
- symbiotic roles.
evidence:
- reference: PMID:40626910
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: despite host and inoculum diversity, these consortia converged on a
- similar set of noncyanobacterial taxa
- explanation: Supports host- and inoculum-independent recruitment of the core
- microbiome.
+ snippet: despite host and inoculum diversity, these consortia converged on a similar set of noncyanobacterial
+ taxa
+ explanation: Supports broad convergence across hosts and inocula, not absence of host or inoculum effects.
+ - reference: PMID:40626910
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: Individual core species were present in 18.5%–68.5% of all samples
+ explanation: Operational core membership is not universal occurrence.
+ - reference: PMID:40626910
+ supports: PARTIAL
+ evidence_source: IN_VITRO
+ snippet: The absence of cyanobacteria-free controls limited our ability to disentangle effects solely attributable
+ to media or laboratory conditions.
+ explanation: Directly states the limitation on causal host recruitment.
environmental_factors:
- name: Freshwater inoculum diversity
value: three distinct freshwater sources
@@ -253,3 +245,27 @@ rare_earth_elements_present: []
metal_relevance: NOT_APPLICABLE
metal_notes: No metal or rare earth element processing role is curated for this
freshwater cyanobacterium-heterotroph coculture framework.
+discussions:
+- discussion_id: core_recruitment_and_plasmid_function
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: The primary source establishes replicated enrichment, but host/source variation persists and the authors
+ report no cyanobacteria-free controls. Bioinformatic removal of predicted plasmid contigs is an analytical comparison,
+ not a biological plasmid intervention. Quantify selective host, plasmid and metabolite-exchange contributions
+ before adding mechanistic arrows; statistical analysis enabled by recruitment is not a downstream ecological
+ cause.
+ attaches_to:
+ - ecological_interactions#Putative Plasmid Functions in the Cyanobacterial Core Microbiome
+ - ecological_interactions#Core Micronutrient and Anoxygenic Photosynthesis Functions
+ - ecological_interactions#Reproducible Core Recruitment Across Hosts and Inocula
+curation_history:
+- timestamp: '2026-10-07T02:43:02Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain putative plasmid enrichment; symbiotic mechanism is PARTIAL, not measured mutualism.; Retain
+ genomic functional potential without asserting measured cross-feeding.; Correct operational-core and host/source
+ boundaries; remove two analytical-workflow arrows. Issue #1620; reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml b/kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml
index c23236415..457ec5134 100644
--- a/kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml
+++ b/kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml
@@ -181,10 +181,10 @@ related_ingredients:
explanation: Identifies vanillic acid as the aromatic substrate metabolized into formaldehyde.
ecological_interactions:
- name: Formaldehyde Toxicity from Aromatic Breakdown
- description: P. putida growing on vanillic acid produces formaldehyde that can reach inhibitory
- concentrations for C. fimi, creating a toxic-intermediate interaction within the lignocellulose
- community.
- interaction_type: COMPETITION
+ description: 'P. putida growing on vanillic acid accumulates approximately 0.6-0.8 mM formaldehyde, above the
+ 0.5 mM concentration that prevents C. fimi growth in separate tolerance assays. This demonstrates toxic potential,
+ not that the transient formaldehyde pulse is the dominant cause of coculture inhibition: P. putida also inhibits
+ C. fimi on protocatechuic acid without formaldehyde generation.'
scope: PAIRWISE
source_taxon:
preferred_term: Pseudomonas putida
@@ -208,9 +208,10 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Methylotrophic Formaldehyde Mitigation
- description: Formaldehyde generated during P. putida growth on vanillic acid
- is the toxic intermediate that M. extorquens consumes to mitigate
- inhibition of C. fimi in the model lignocellulose community.
+ description: P. putida vanillic-acid metabolism supplies formaldehyde that M. extorquens can consume, reducing
+ the magnitude and duration of its accumulation. The biochemical production-to-removal link is supported; relief
+ of C. fimi growth inhibition is PARTIAL, because inhibition persists in the formaldehyde-free PCA control
+ and is not fully ameliorated by M. extorquens.
evidence:
- reference: doi:10.3390/microorganisms9020321
supports: SUPPORT
@@ -223,9 +224,10 @@ ecological_interactions:
snippet: exceed the minimum inhibitory concentration for C. fimi
explanation: Supports formaldehyde toxicity toward C. fimi.
- name: Methylotrophic Formaldehyde Mitigation
- description: M. extorquens lowers formaldehyde concentrations generated by P. putida, mitigating
- toxin accumulation in the synthetic lignocellulose community.
- interaction_type: COMMENSALISM
+ description: M. extorquens addition lowers measurable formaldehyde produced by P. putida. PARTIAL - C. fimi is
+ a potential beneficiary of reduced toxin exposure, but detoxification does not completely ameliorate its growth
+ inhibition; other interactions dominate the tested batch conditions. Neither neutral fitness of the methylotroph
+ nor full recipient rescue is established by the concentration change.
scope: PAIRWISE
source_taxon:
preferred_term: Methylorubrum extorquens
@@ -248,22 +250,31 @@ ecological_interactions:
evidence_source: IN_VITRO
snippet: presence of M. extorquens lowers those concentrations
explanation: Supports methylotrophic lowering of formaldehyde concentrations.
-- name: C. fimi and M. extorquens Metabolite Exchange
- description: The system supports a possible mutualistic interaction between C. fimi and M. extorquens
- through metabolite exchange, including engineered methionine release by M. extorquens that supports
- methionine-limited C. fimi.
- interaction_type: MUTUALISM
+ - reference: doi:10.3390/microorganisms9020321
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: M. extorquens was not able to completely ameliorate either the formaldehyde production or the growth
+ inhibition.
+ explanation: Bounds detoxification without erasing the observed reduction.
+- name: Conditional Methionine Rescue and C. fimi Cross-Feeding
+ description: Selected methionine-overproducing M. extorquens CM4744 supports C. fimi without supplied methionine,
+ but only when methanol or succinate supports the producer; wild-type M. extorquens does not provide this rescue.
+ The listed source-to-target direction denotes this methionine supply. Separately, C. fimi supports M. extorquens
+ growth without an added methylotroph carbon substrate, consistent with reverse-direction carbon cross-feeding
+ whose carrier was not resolved here. PARTIAL - These positive assays do not demonstrate autonomous reciprocal
+ methionine-for-carbon codependence in one unsupplemented condition.
+ interaction_type: CROSS_FEEDING
scope: PAIRWISE
source_taxon:
- preferred_term: Cellulomonas fimi
- term:
- id: NCBITaxon:1708
- label: Cellulomonas fimi
- target_taxon:
preferred_term: Methylorubrum extorquens
term:
id: NCBITaxon:408
label: Methylorubrum extorquens
+ target_taxon:
+ preferred_term: Cellulomonas fimi
+ term:
+ id: NCBITaxon:1708
+ label: Cellulomonas fimi
metabolites:
- preferred_term: methionine
term:
@@ -276,18 +287,27 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
evidence:
- reference: doi:10.3390/microorganisms9020321
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
snippet: mutualistic interaction between C. fimi and M. extorquens through metabolite exchange
- explanation: Supports the curated metabolite-exchange interaction.
+ explanation: The abstract explicitly proposes a possibility, not established autonomous mutualism.
- reference: doi:10.3390/microorganisms9020321
supports: SUPPORT
evidence_source: IN_VITRO
snippet: M. extorquens to support C. fimi through the production of methionine
- explanation: Supports methionine excretion by engineered M. extorquens as a C. fimi-supporting exchange.
+ explanation: Supports the selected methionine-overproducer-to-C.fimi direction, conditional on producer growth
+ substrate.
+ - reference: doi:10.3390/microorganisms9020321
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: wild-type M. extorquens did not promote C. fimi growth.
+ explanation: Distinguishes the selected overproducer from the wild-type assay.
- name: Resource Competition in Model Lignocellulose Medium
- description: The consortium displayed resource competition and interspecies differences in growth
- requirements and toxin sensitivities.
+ description: PARTIAL - P. putida suppresses C. fimi growth and cellobiose consumption even on formaldehyde-free
+ protocatechuic acid. Iron and vitamin/amino-acid supplementation improves coculture growth, consistent with
+ competition for iron or methionine and other supplements. Spent medium lowers yield, but depletion and a secreted
+ inhibitor remain alternatives; high iron itself inhibits C. fimi. These experiments do not establish a single
+ exclusive inhibitory resource or competition causing methionine overproduction.
interaction_type: COMPETITION
scope: COMMUNITY_LEVEL
biological_processes:
@@ -295,18 +315,18 @@ ecological_interactions:
term:
id: GO:0044419
label: biological process involved in interspecies interaction between organisms
- downstream:
- - target: C. fimi and M. extorquens Metabolite Exchange
- description: >
- Competition for methionine was one inhibitory axis that could be resolved
- by adding an M. extorquens strain engineered to excrete methionine for C.
- fimi.
evidence:
- reference: doi:10.3390/microorganisms9020321
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
snippet: resource competition
explanation: Supports resource competition as an ecological dynamic in the community.
+ - reference: doi:10.3390/microorganisms9020321
+ supports: PARTIAL
+ evidence_source: IN_VITRO
+ snippet: This could indicate either the effect of a soluble compound produced by P. putida, or the depletion
+ by P. putida of important medium components, or both.
+ explanation: Retains alternative inhibition mechanisms rather than certifying a single depleted resource.
environmental_factors:
- name: Lignocellulose-relevant polymer recalcitrance
value: complex organic polymers such as lignocellulose
@@ -407,3 +427,29 @@ cultivation_setup:
snippet: we used 48-well tissue culture plates (Corning Costar, Tewksbury, MA, USA)
with a total volume of 640 µL per well, and incubated in a LPX44 Plate Hotel
(LiCONiC, Mauren, Liechtenstein) with shaking at 650 RPM
+discussions:
+- discussion_id: formaldehyde_and_conditional_exchange_boundaries
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: Preserve direct formaldehyde lowering, C.fimi-supported methylotroph growth and selected-overproducer
+ methionine rescue. The PCA control retains inhibition without formaldehyde; supplementation and spent medium
+ do not uniquely isolate resource depletion. CM4744 rescue requires additional producer substrate, while true
+ codependence is proposed for future evolution. Remove the competition-to-engineered-exchange arrow because it
+ encodes investigator intervention, not spontaneous biological induction.
+ attaches_to:
+ - ecological_interactions#Formaldehyde Toxicity from Aromatic Breakdown
+ - ecological_interactions#Methylotrophic Formaldehyde Mitigation
+ - ecological_interactions#Conditional Methionine Rescue and C. fimi Cross-Feeding
+ - ecological_interactions#Resource Competition in Model Lignocellulose Medium
+curation_history:
+- timestamp: '2026-10-07T02:43:02Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain toxic potential and production-to-mitigation link, not exclusive inhibition.; Retain measured
+ formaldehyde lowering; recipient rescue remains incomplete.; Correct methionine direction and preserve two condition-specific
+ positive growth assays, not autonomous mutualism.; Bound resource competition using PCA, supplement and spent-medium
+ controls; remove engineering-workflow arrow. Issue #1621; reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml b/kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml
index 5d6116462..6e257df70 100644
--- a/kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml
+++ b/kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml
@@ -153,12 +153,10 @@ taxonomy:
explanation: Names Devosia among the genera stably present in moss-treated simulant soils.
ecological_interactions:
- name: Moss-facilitated microbial colonization on Martian simulant
- description: >
- In the Martian (MGS) simulant, whose high bulk density and low porosity impeded
- microbial effectiveness, the moss Hypnum plumaeforme functioned as a biological
- buffer that facilitated colonization by the plant growth-promoting bacteria and
- restored plant growth responses. The moss thereby acts as a key facilitator of
- plant-microbe interactions under harsh regolith-simulant conditions.
+ description: The primary abstract reports that Hypnum plumaeforme acts as a biological buffer facilitating microbial
+ colonization in the dense, low-porosity Martian simulant, where microbial effectiveness is otherwise impeded.
+ PARTIAL - This is the reported facilitation interpretation; abstract-only access does not resolve selective
+ colonization mediation versus other moss-associated changes.
interaction_type: COLONIZATION_FACILITATION
scope: COMMUNITY_LEVEL
biological_processes:
@@ -168,9 +166,10 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Moss-microbe co-treatment enhances barley growth and soil quality
- description: >
- Moss-buffered microbial colonization on the low-porosity Martian simulant
- restores plant growth responses in the combined moss-microbe treatment.
+ description: PARTIAL - Moss-associated buffering and microbial colonization are reported to restore plant growth
+ responses on the Martian simulant. This is a supported mechanistic interpretation of the combined treatment,
+ but the available abstract does not isolate colonization from organic inputs, soil changes or other growth-promoting
+ activities.
evidence:
- reference: doi:10.1016/j.ecolind.2025.114023
supports: SUPPORT
@@ -180,40 +179,35 @@ ecological_interactions:
- reference: doi:10.1016/j.ecolind.2025.114023
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: moss acts not merely as an organic input but as a key facilitator of plant–microbe interactions under harsh conditions
- explanation: Supports the moss as a facilitator of plant-microbe interactions under harsh regolith-simulant conditions.
+ snippet: moss acts not merely as an organic input but as a key facilitator of plant–microbe interactions under
+ harsh conditions
+ explanation: Supports the moss as a facilitator of plant-microbe interactions under harsh regolith-simulant
+ conditions.
- name: Moss-microbe co-treatment enhances barley growth and soil quality
- description: >
- Combined application of moss and its associated bacteria (versus moss alone or
- microbes alone) significantly enhanced barley shoot biomass, dry weight, soil
- organic matter, available phosphate, and cation exchange capacity, indicating a
- community-level synergy of the moss-microbe complex improving plant growth and soil
- functionality on the simulants.
+ description: The study compared moss alone, microbes alone and combined application on lunar and Martian simulants.
+ The primary abstract reports significant combined-treatment improvements in barley shoot biomass, dry weight,
+ organic matter, available phosphate and cation exchange capacity. It does not specify every endpoint comparator
+ or demonstrate reciprocal moss-microbial fitness; these positive treatment outcomes are not classified as mutualism.
scope: COMMUNITY_LEVEL
- interaction_type: MUTUALISM
biological_processes:
- preferred_term: biological process involved in interspecies interaction between organisms
term:
id: GO:0044419
label: biological process involved in interspecies interaction between organisms
- downstream:
- - target: Moss-Microbe Rhizosphere Metabolite Accumulation
- description: >
- The same moss-microbe co-treatment that improved barley growth and soil
- quality also reprogrammed the rhizosphere metabolite profile.
evidence:
- reference: doi:10.1016/j.ecolind.2025.114023
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: moss–microbe co-treatment significantly enhanced shoot biomass, dry weight, organic matter content, available phosphate, and cation exchange capacity
- explanation: Supports the community-level synergy of moss plus microbes enhancing plant growth and soil quality.
+ snippet: moss–microbe co-treatment significantly enhanced shoot biomass, dry weight, organic matter content,
+ available phosphate, and cation exchange capacity
+ explanation: Supports positive combined-treatment outcomes; does not specify superiority over each single treatment
+ for every endpoint or reciprocal fitness.
- name: Moss-Microbe Rhizosphere Metabolite Accumulation
- description: >
- Metabolite profiling of the moss-microbe complex treatment revealed significant
- accumulation of growth-related D-ribose and D-gluconate, suggesting that the
- complex reprograms rhizosphere metabolism on the soil simulants.
+ description: Metabolite profiling reports accumulation of D-ribose and D-gluconate with moss-microbe treatment.
+ Reprogrammed rhizosphere metabolism is HYPOTHESIZED from altered pools; producer identity, interspecies transfer
+ and the causal contribution to barley growth are not resolved by the available abstract. Growth/soil improvement
+ and metabolite changes are parallel reported treatment outcomes, not an established causal sequence.
scope: COMMUNITY_LEVEL
- interaction_type: MUTUALISM
metabolites:
- preferred_term: D-ribose
term:
@@ -232,8 +226,10 @@ ecological_interactions:
- reference: doi:10.1016/j.ecolind.2025.114023
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: Metabolite profiling further revealed the significant accumulation of growth-related compounds such as D-ribose and D-gluconate, suggesting that the moss–microbe complex may reprogram rhizosphere metabolism.
- explanation: Supports moss-microbe treatment reshaping the rhizosphere metabolite pool.
+ snippet: Metabolite profiling further revealed the significant accumulation of growth-related compounds such
+ as D-ribose and D-gluconate, suggesting that the moss–microbe complex may reprogram rhizosphere metabolism.
+ explanation: Supports changed metabolite pools and the authors proposed metabolic interpretation, not demonstrated
+ transfer or mediation.
environmental_factors:
- name: Lunar (LHS) and Martian (MGS) soil simulants
value: LHS and MGS soil simulants
@@ -274,3 +270,27 @@ related_ingredients:
evidence_source: IN_VITRO
snippet: accumulation of growth-related compounds such as D-ribose and D-gluconate
explanation: Names D-gluconate among the accumulated growth-related rhizosphere metabolites.
+discussions:
+- discussion_id: moss_colonization_and_metabolite_mediation
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: The primary publisher abstract supports positive treatment effects and a colonization interpretation.
+ Full publisher access returned403; this does not show that selective controls were absent. Obtain authorized
+ full Methods to resolve colonization versus other moss effects, endpoint comparators and metabolite mediation.
+ Devosia is detected rather than a selected inoculant; do not assign all measured outcomes to each bacterial
+ member.
+ attaches_to:
+ - ecological_interactions#Moss-facilitated microbial colonization on Martian simulant
+ - ecological_interactions#Moss-microbe co-treatment enhances barley growth and soil quality
+ - ecological_interactions#Moss-Microbe Rhizosphere Metabolite Accumulation
+curation_history:
+- timestamp: '2026-10-07T02:43:02Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain reported colonization facilitation with PARTIAL mediation arrow.; Preserve treatment gains; remove
+ unsupported reciprocal-fitness classification and shared-outcome arrow.; Retain metabolite accumulation, not
+ traced cross-feeding or demonstrated growth mediation. Issue #1622; reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml b/kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml
index 131b1deb0..ccba2ad1c 100644
--- a/kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml
+++ b/kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml
@@ -489,11 +489,10 @@ taxonomy:
explanation: Names Desulfovibrio piger DSM 749T as an MDSC member.
ecological_interactions:
- name: Mucin-Type-Dependent MDSC Restructuring
- description: >-
- After four sequential transfers, the MDSC stabilized into distinct
- species-level compositions on PGM, PGM plus BSM, and PGM plus added
- sialylated glycans, with BSM alone supporting limited growth.
- interaction_type: NICHE_PARTITIONING
+ description: After four sequential transfers, the MDSC stabilized into distinct species-level compositions on
+ PGM, PGM plus BSM, and PGM plus added sialylated glycans, with BSM alone supporting limited growth. Substrate-regime
+ interventions establish composition responses, but taxon-specific niche partitioning or competition is an interpretation,
+ not selectively isolated by these abundance data.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: biological process involved in interspecies interaction
@@ -502,9 +501,11 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
downstream:
- target: Substrate-Dependent Mucin Glycan Degradation
- description: >-
- Community composition tracked with different O- and N-glycan degradation
- patterns on the four mucin substrate regimes.
+ description: PARTIAL - Substrate-selected community composition can change the available glycan-degrading enzyme
+ repertoire and thereby influence degradation. The paper reports coordinated composition and glycan changes,
+ including convergence of added-glycan degradation rates, but changes mucin substrate rather than holding substrate
+ fixed while selectively changing composition. Direct substrate accessibility and composition-mediated effects
+ are therefore not separated.
evidence:
- reference: PMID:42109165
supports: SUPPORT
@@ -512,11 +513,11 @@ ecological_interactions:
snippet: After four transfers, the composition of the community differed as a result of mucin type condition
explanation: Supports mucin-type-dependent restructuring of the synthetic community.
- name: Substrate-Dependent Mucin Glycan Degradation
- description: >-
- The MDSC degraded PGM O-glycans, PGM plus BSM O-glycans, and PGM plus
- added sialylated glycans in sequential batch culture, but showed limited
- growth and only minimal O-glycan degradation when BSM was supplied alone.
- interaction_type: CROSS_FEEDING
+ description: The MDSC rapidly degrades PGM and mixed PGM/BSM O-glycans and degrades added sialylated glycans.
+ BSM alone supports little growth and only minimal O-glycan degradation, while its low-abundance identified N-glycans
+ are completely degraded. Added sialylated structures show different early rates and some remain detectable at120
+ h. These community substrate-processing outcomes do not identify the donor-recipient fluxes implied by a pairwise
+ cross-feeding mechanism.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: carbohydrate metabolic process
@@ -528,14 +529,14 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: Furthermore, glycan degradation and metabolite production were also affected by mucin type
- explanation: Supports the substrate-dependent mucin glycan degradation and metabolic output of the MDSC.
+ explanation: Supports the substrate-dependent mucin glycan degradation and metabolic output of the MDSC. Community-level
+ outcome only; no resolved member-to-member exchange follows from this measurement.
- name: Mucin-Type-Dependent Fermentation Profile
- description: >-
- HPLC measurements showed that PGM, BSM, PGM/BSM, and PGM plus sialylated
- glycans yielded distinct extracellular metabolite profiles, including
- condition-dependent changes in acetate, propionate, formate, and ethanol
- after community stabilization.
- interaction_type: CROSS_FEEDING
+ description: HPLC measurements showed that PGM, BSM, PGM/BSM, and PGM plus sialylated glycans yielded distinct
+ extracellular metabolite profiles, including condition-dependent changes in acetate, propionate, formate, and
+ ethanol after community stabilization. These are extracellular pool profiles, not measured transfer between
+ particular members. Low metabolite output on BSM may include yeast-extract fermentation; an increase in metabolite
+ concentration is not proof of production exclusively from mucin.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: acetate
@@ -564,7 +565,8 @@ ecological_interactions:
supports: SUPPORT
evidence_source: IN_VITRO
snippet: Incubation of the MDSC with different mucin types resulted in distinct metabolite profiles
- explanation: Supports mucin-type-dependent extracellular metabolite output.
+ explanation: Supports mucin-type-dependent extracellular metabolite output. Community-level outcome only; no
+ resolved member-to-member exchange follows from this measurement.
environmental_factors:
- name: Porcine gastric mucin
value: '0.5'
@@ -731,50 +733,62 @@ metal_relevance: NOT_APPLICABLE
metal_notes: No metal or rare earth element processing role is curated for this mucin glycan-degrading gut SynCom.
discussions:
- discussion_id: mucin-mdsc-pairwise-crossfeeding-resolution
- prompt: >-
- Which exact MDSC members acted as primary mucin glycan degraders, secondary
- degraders, and hydrogen consumers in each mucin condition?
+ prompt: Which exact MDSC members acted as primary mucin glycan degraders, secondary degraders, and hydrogen consumers
+ in each mucin condition?
kind: KNOWLEDGE_GAP
status: OPEN
attaches_to:
- ecological_interactions
- rationale: >-
- The 2026 MDSC paper states that the community design included primary mucin
- degraders, secondary degraders, and hydrogen consumers and measured
- condition-level community composition, glycan degradation, and metabolite
- production. Pairwise member-to-member carbon or gas fluxes in the exact
- 14-strain MDSC were not resolved from this paper alone, so this record
- captures only community-level mucin responses.
+ rationale: The 2026 MDSC paper states that the community design included primary mucin degraders, secondary degraders,
+ and hydrogen consumers and measured condition-level community composition, glycan degradation, and metabolite
+ production. Pairwise member-to-member carbon or gas fluxes in the exact 14-strain MDSC were not resolved from
+ this paper alone, so this record captures only community-level mucin responses.
posed_by: codex
posed_date: '2026-09-20'
+- discussion_id: mucin_substrate_and_composition_mediation
+ prompt: Which selective mechanisms explain the measured community responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ posed_by: codex
+ posed_date: '2026-10-07'
+ rationale: Preserve the experimentally altered mucin regimes and positive composition, glycan and metabolite responses.
+ The retained composition-to-degradation mechanism is PARTIAL because composition and substrate accessibility
+ change together. Do not confuse failure to degrade most BSM O-glycans with failure to degrade its N-glycans,
+ or A.muciniphila abundance with demonstrated sialic-acid utilization. Monoculture BSM plus threonine did not
+ restore A.muciniphila growth. Existing unresolved pairwise-flux discussion and prior957/958/959 repairs remain
+ intact.
+ attaches_to:
+ - ecological_interactions#Mucin-Type-Dependent MDSC Restructuring
+ - ecological_interactions#Substrate-Dependent Mucin Glycan Degradation
+ - ecological_interactions#Mucin-Type-Dependent Fermentation Profile
curation_history:
- timestamp: '2026-09-20T10:22:27Z'
curator: codex
action: CREATE_RECORD
- changes: >-
- Created CommunityMech:000392 for the 14-member MDSC synthetic gut
- community from PMID:42109165, including exact type-strain membership,
- mucin-substrate sequential-batch cultivation, community-level
- mucin-dependent composition, glycan-degradation and metabolite responses,
- and linked ENA/Yoda datasets.
+ changes: Created CommunityMech:000392 for the 14-member MDSC synthetic gut community from PMID:42109165, including
+ exact type-strain membership, mucin-substrate sequential-batch cultivation, community-level mucin-dependent
+ composition, glycan-degradation and metabolite responses, and linked ENA/Yoda datasets.
llm_assisted: true
- timestamp: '2026-09-20T10:30:35Z'
curator: codex
action: FIX_MDSC_REVIEW_FINDINGS
- changes: >-
- Addressed adversarial review issues #957 and #958 by clarifying that PGM
- plus SG was one condition with two added sialylated glycans, capturing the
- sequential-batch change from 0.05% to 0.03% w/v combined sialylated glycans,
- and narrowing the fermentation-profile description to result-level HPLC
- outputs rather than the full standard list.
+ changes: 'Addressed adversarial review issues #957 and #958 by clarifying that PGM plus SG was one condition with
+ two added sialylated glycans, capturing the sequential-batch change from 0.05% to 0.03% w/v combined sialylated
+ glycans, and narrowing the fermentation-profile description to result-level HPLC outputs rather than the full
+ standard list.'
llm_assisted: true
- timestamp: '2026-09-20T11:01:12Z'
curator: codex
action: FIX_MDSC_GTDB_GROUNDINGS
- changes: >-
- Addressed CI issue #959 by grounding Akkermansia muciniphila, Bacteroides
- caccae, Ruminococcus torques, and Blautia hydrogenotrophica with manual GTDB
- R232 pins; marking Desulfovibrio piger as an ambiguous R232 split; and
- retaining Faecalibacterium duncaniae as unresolved because R232 did not
- resolve the current NCBI species to a majority GTDB cluster.
+ changes: 'Addressed CI issue #959 by grounding Akkermansia muciniphila, Bacteroides caccae, Ruminococcus torques,
+ and Blautia hydrogenotrophica with manual GTDB R232 pins; marking Desulfovibrio piger as an ambiguous R232 split;
+ and retaining Faecalibacterium duncaniae as unresolved because R232 did not resolve the current NCBI species
+ to a majority GTDB cluster.'
+ llm_assisted: true
+- timestamp: '2026-10-07T02:43:02Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain causal substrate response; qualify composition-to-degradation mediation.; Preserve O-glycan versus
+ N-glycan and residual-added-glycan distinctions without claiming resolved cross-feeding.; Retain measured metabolite
+ profiles and prior analyte fix; pool changes are not transfer flux. Issue #1623; reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml'
llm_assisted: true
diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md
index bafff1c6e..5668c03c8 100644
--- a/reports/causal_graph_review/README.md
+++ b/reports/causal_graph_review/README.md
@@ -5,6 +5,27 @@ 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`.
+## Batch74: Enrichment, Conditional Rescue And Mucin Responses
+
+[Decisions](decisions/20261007-four-records-batch74.yaml),
+[validation](validation-20261007-batch74.json) and
+[self-adversarial review](adversarial-review-20261007-batch74.yaml) cover all
+13 existing nodes and seven original arrows. Four records are repaired;
+four analysis-workflow, engineering-workflow or shared-outcome links are removed.
+
+Positive core enrichment, formaldehyde lowering, conditional methionine rescue,
+moss treatment gains and mucin-substrate responses remain. Core membership is
+operational, not universal; gene content is not measured exchange. Methionine
+rescue has the corrected donor direction and producer-substrate requirement.
+Moss and mucin mediation remain explicitly bounded, with no new graph topology.
+
+All 21 graph quotations match existing caches: 17 also match fresh primary XML,
+and four moss quotations were visually matched to the publisher-indexed abstract.
+Moss full-text access returned 403; separate supplements and original figure
+pixels were not audited. All caches and non-graph blocks are preserved.
+Repairs #1620-#1623 await protected-main merge; metadata #1624 stays open.
+Four histories are appended. Self-review is not independent approval.
+
## Batch73: Nitrogen Mediation And Bioleaching Evidence
[Decisions](decisions/20261007-four-records-batch73.yaml),
diff --git a/reports/causal_graph_review/adversarial-review-20261007-batch74.yaml b/reports/causal_graph_review/adversarial-review-20261007-batch74.yaml
new file mode 100644
index 000000000..7abb66f6f
--- /dev/null
+++ b/reports/causal_graph_review/adversarial-review-20261007-batch74.yaml
@@ -0,0 +1,204 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: b46d6272aa24de28b7e31995b74f7a306b387fff
+scope:
+- kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml
+- kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml
+- kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml
+- kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml
+decision_ledger: reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
+validation_report: reports/causal_graph_review/validation-20261007-batch74.json
+findings:
+- issue: 1620
+ severity: P2
+ status: addressed_in_this_change
+ finding: Core membership, causal recruitment and putative functional inference.
+ disposition: Close only after protected-main merge.
+- issue: 1621
+ severity: P2
+ status: addressed_in_this_change
+ finding: Formaldehyde controls, conditional rescue, donor direction and engineering arrow.
+ disposition: Close only after protected-main merge.
+- issue: 1622
+ severity: P2
+ status: addressed_in_this_change
+ finding: Moss treatment comparators, shared outcomes and reciprocal fitness.
+ disposition: Close only after protected-main merge.
+- issue: 1623
+ severity: P2
+ status: addressed_in_this_change
+ finding: Mucin composition mediation and unresolved cross-feeding.
+ disposition: Close only after protected-main merge.
+- issue: 1624
+ severity: P2
+ status: unresolved_non_graph
+ finding: Core, strain and host 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 three complete primary
+ main bodies, captions and embedded tables; no separate supplement, raw-data or figure-pixel audit. Moss scope
+ is primary abstract only after full access403, not evidence of absent controls.
+- Preserve108 retained cyanobacterial consortia and25 operational core species. Species occurrence18.5%-68.5% contradicts
+ universal membership. Both host and source effects are significant; authors explicitly lack cyanobacteria-free
+ controls. Repair the name, description and stale evidence explanation, not only the headline.
+- Genomic and plasmid enrichment are positive observations. Putative plasmid cobinning,98% noncircularized contigs
+ and bioinformatic removal do not prove biological plasmid dependence, metabolite exchange or reciprocal fitness.
+ Remove analytical-workflow edges without deleting observed nodes.
+- Retain formaldehyde generation0.6-0.8mM, C.fimi inhibition threshold0.5mM, and experimentally reduced accumulation
+ with M.extorquens. The formaldehyde-free PCA control still inhibits C.fimi; do not claim detoxification completely
+ restores growth or dominates inhibition.
+- Preserve two positive exchange results under their actual conditions. Selected CM4744 supports C.fimi without
+ supplied methionine only with added methanol/succinate; wild type does not. Separately C.fimi supports methylotroph
+ growth. Correct methionine donor direction; no claim of autonomous mutual codependence.
+- Iron/supplement rescue and spent-medium inhibition support multiple mechanisms, not an exclusive depleted resource.
+ Remove competition-to-engineered-exchange arrow because investigator selection is not biological induction of
+ overproduction. No new reverse edge or separate node added.
+- Moss primary abstract supports reported colonization facilitation, growth/soil gains and altered metabolite pools.
+ Preserve positive results while bounding endpoint comparators and colonization mediation. Shared-treatment outcomes
+ do not establish growth causing metabolite accumulation; joint application is not measured reciprocal fitness.
+- Mucin substrate changes directly affect composition, degradation and fermentation profiles. Retain composition-to-degradation
+ as PARTIAL mechanism, not a composition-only intervention. Preserve BSM O-glycan limitation versus N-glycan degradation,
+ residual added glycans and yeast-extract contribution. Do not infer A.muciniphila sialic-acid utilization from
+ enrichment.
+- Preserve existing MDSC pairwise-flux discussion and closed957/958/959 repairs. No taxonomy, strain identifier
+ or non-graph change. Metadata1624 separately tracks remaining whole-record scope; no synthetic member-specific
+ arrows invented.
+- Adversarial diff review found a remaining host-independent evidence explanation. Corrected before commit, added
+ explicit regression coverage and retained17 superseded outputs, then reran all affected and corpus gates. No stale
+ pre-fix pass is presented as final verification.
+- All13 nodes and7 original arrows have decisions;3 remain,4 noncausal links removed. All456 other records,920 caches
+ and raw non-graph blocks verified unchanged. Four append-only record/history events. Structural defects zero;44
+ baseline warnings unchanged, connectivity census unchanged.
+- Actual schema, strict, terms, references, snippets, history, both-root inventory/network/rank, repeat renders,
+ regression and lint results retained with digests. Exact descriptions parsed across456 pages, not browser screenshots.
+ Postcommit docs-current remains a separate publication gate.
+- Dedup scanned906 all-state issue titles/bodies and31 ignored/hidden local matches with explicit git/docs/site/cache
+ exclusions; prior957/958/959 fixes inspected. No exhaustive PR-comment audit or global source-absence claim. Repair1620-1623
+ stays OPEN until protected-main merge;1624 stays OPEN afterward.
+- No new causal topology and no paid provider submission. Existing denied/pending scoped authorizations unchanged.
+ Self-adversarial COMMENT is not independent approval and does not certify corpus completion.
+verification:
+ combined_regressions: 662 passed in 202.52s (0:03:22)
+ 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.
+ All21 graph quotations match selected caches;17 automatically match fresh primary XML and4 moss quotations were
+ visually checked against the publisher-indexed primary abstract. Cache matching is not entailment. Full moss
+ access403; all920 caches unchanged, not recertified. Prior batch73 gallium non-graph reference exception remains
+ outside this batch.
+ snippet_counts_by_record:
+ kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml:
+ MATCH: 13
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml:
+ MATCH: 26
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml:
+ MATCH: 12
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml:
+ MATCH: 28
+ RENDERING: 2
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ primary_graph_snippet_proof:
+ automatically_primary_matched: 17
+ publisher_abstract_visual_matches: 4
+ new_nodes_or_arrows: 0
+ complete_primary_main_texts_read: 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-batch74.yaml: 4d975cf5114b018229e3fc8408b87ea6b43e50d5e40569c564aeefa4daffa8ca
+ tests/test_causal_review_batch74.py: 46f1cbe401d385001730f356bb6349965b3452c00c0f88f7b714d62f2b0c2cff
+ kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml: c995dcaed8253c17933f5cc48404f8a09438eb99dc975df2d717a08c24a69023
+ kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml: 1cdf5aaf167042938bdbdd8d9bcb0abaa322a0a4a99a7f05abd8b2658740e82c
+ kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml: 40f12b8a0f6ef7d64390819dd8c67282e465da6d24d5098d19080088dd04199d
+ kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml: 4ef5925538ded3549c72fd84eaa0786922b4f9565de33946289104cef18a5d49
+ reports/causal_graph_review/README.md: e8279363f25533e6b67b674def497791a94daea1f4c0219c7ac961ce72542a05
+ unchanged_caches: 920
+ unchanged_records: 456
+ edison:
+ required_for_this_repair: false
+ provider_submissions: 0
+ credits_spent: 0
+ rationale: Existing topology repaired; no new causal structure. Prior denied/pending scoped authorizations unchanged.
+ 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. Removing group-level directional
+ taxa does not establish member-resolved activity.
+corpus:
+ records: 460
+ nodes: 1447
+ edges: 620
+ review_status_counts:
+ needs_research: 25
+ pending: 196
+ reviewed: 239
+limitations:
+- Baseline before paper research covered460 records and920 caches, including both roots and ignored/hidden YAML.
+ All13 existing nodes reviewed and retained;7 original arrows become3 after removing4 noncausal workflow/shared-outcome
+ links. No new nodes/arrows or paid provider calls.
+- Full primary main bodies, embedded tables and captions read for cyanobacteria, lignocellulose and mucin. Separate
+ supplements, raw data and original figure pixels were not audited. Moss publisher full access403; publisher-indexed
+ primary abstract visually checked, not full Methods. Abstract-only access is not proof no controls exist.
+- All21 graph quotations match selected existing caches;17 also match fresh primary XML with whitespace-only normalization
+ and4 moss quotations visually match the publisher-indexed abstract. Cache matching is not entailment. No complete
+ primary articles added to the repository; all920 caches preserved.
+- Core microbiome is operational, not universal or independent of host/inoculum; plasmid content and genomic function
+ support hypotheses, not measured exchange or fitness. Preserve positive replicated enrichment and stabilization.
+- Preserve formaldehyde lowering and positive growth assays; PCA control retains inhibition. Selected CM4744 methionine
+ rescue requires added producer substrate, and C.fimi-supported methylotroph growth is a separate assay. Canonical
+ species IDs preserved; strain metadata remains separate.
+- Preserve moss treatment gains and reported facilitation. Remove shared-outcome direction and reciprocal-fitness
+ labels, not positive growth. Retain mucin substrate effects, conditional composition mediation, O/N-glycan distinction
+ and measured profiles without inferred donor-recipient flux.
+- Scanned906 all-state issue titles/bodies for dedup with31 ignored/hidden local matches under explicit git/docs/site/cache
+ exclusions. Prior957/958/959 fixes retained;1093 is unrelated cache maintenance, not a duplicate. No exhaustive
+ historical PR-comment audit or global source-absence claim.
+- All raw non-graph blocks and456 other records preserved, not recertified. Metadata1624 remains OPEN after graph
+ repair. Repair1620-1623 remain OPEN until protected-main merge. Self-adversarial COMMENT is not independent approval.
+ The whole corpus is unfinished.
diff --git a/reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml b/reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
new file mode 100644
index 000000000..c632d7880
--- /dev/null
+++ b/reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
@@ -0,0 +1,505 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: b46d6272aa24de28b7e31995b74f7a306b387fff
+baseline_commit: b46d6272aa24de28b7e31995b74f7a306b387fff
+base_tree: 31c6bbcfe3e24737b3f4e5291d8ed1235e53160e
+pre_source_baseline_sha256: 4fcf62f971101ea8197a4ac264f71e48d70b28fd2d219aa478d0f310f83d4eb9
+issues:
+- 1620
+- 1621
+- 1622
+- 1623
+unresolved_non_graph_issues:
+- 1624
+unresolved_research_issues: []
+issue_deduplication:
+ all_state_issue_titles_and_bodies: 906
+ ignored_hidden_local_search: true
+ matching_local_files: 31
+ matching_issues:
+ - 1093
+ - 959
+ - 958
+ - 957
+primary_artifacts:
+ /private/tmp/communitymech-batch74/baseline.json: 4fcf62f971101ea8197a4ac264f71e48d70b28fd2d219aa478d0f310f83d4eb9
+ /private/tmp/communitymech-batch74/cyanobacteria-metadata.json: a30ed96596030facfd2665b0075e12b2f366d0c4298a061df1dfc3c15df80c50
+ /private/tmp/communitymech-batch74/cyanobacteria-primary.txt: de09c8612dfc9428c7dbdd4e91689e8fd54d9e10023c22513bf57f7adc2d7f32
+ /private/tmp/communitymech-batch74/cyanobacteria-primary.xml: d82ce2de2afa9ff51da61455fdd2bebd6f6422610b1a06a655e04cba47504dd9
+ /private/tmp/communitymech-batch74/issue-matches.json: 0e3aecfee303560a04a302b38e6ab32464a5b637846de59cea6fbed751a2f98e
+ /private/tmp/communitymech-batch74/lignocellulose-metadata.json: 1b81e729c0f63f16284c1bfca29582eeb1f4127a5d3353aaacdb1368cf50f35f
+ /private/tmp/communitymech-batch74/lignocellulose-primary.txt: cc656b23348ad3f1f9b95b1643c541b100266b03b2725fd3c1798d07135c3124
+ /private/tmp/communitymech-batch74/lignocellulose-primary.xml: 9069f8368a141e4acc92553ce4ee25cc053f17b02bb71309b95a51a3c442c7ea
+ /private/tmp/communitymech-batch74/mucin-metadata.json: 3b0fa960f713204b88dc36d20c5aa97830fdeea369c19e4bc144d89c016de2de
+ /private/tmp/communitymech-batch74/mucin-primary.txt: 16874be4a038a16a34cac0b11d079c1162fb9028d3dd60afe0d59ccf65b6e39e
+ /private/tmp/communitymech-batch74/mucin-primary.xml: dbbd242f1536d37ff6e6fe0a57f5ab318d4f75c433f1a66951ba6ee4d6ed43c2
+ /private/tmp/communitymech-batch74/primary-manifest.json: 07268fc559f6806ddea24a1c9199ba41a76ae9388e292f73cad7b3a6e834b62c
+primary_urls:
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC12368963/fullTextXML
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC7914493/fullTextXML
+- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13158910/fullTextXML
+- https://doi.org/10.1016/j.ecolind.2025.114023
+primary_graph_snippet_count: 21
+cache_matched_graph_snippet_count: 21
+snippet_checks:
+- record: Model_Cyanobacterial_Consortia_Core_Microbiome
+ node: Putative Plasmid Functions in the Cyanobacterial Core Microbiome
+ reference: PMID:40626910
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Cyanobacterial_Consortia_Core_Microbiome
+ node: Core Micronutrient and Anoxygenic Photosynthesis Functions
+ reference: PMID:40626910
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Cyanobacterial_Consortia_Core_Microbiome
+ node: Reproducible Core Recruitment Across Hosts and Inocula
+ reference: PMID:40626910
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Cyanobacterial_Consortia_Core_Microbiome
+ node: Reproducible Core Recruitment Across Hosts and Inocula
+ reference: PMID:40626910
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Cyanobacterial_Consortia_Core_Microbiome
+ node: Reproducible Core Recruitment Across Hosts and Inocula
+ reference: PMID:40626910
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Formaldehyde Toxicity from Aromatic Breakdown
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Formaldehyde Toxicity from Aromatic Breakdown
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Methylotrophic Formaldehyde Mitigation
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Methylotrophic Formaldehyde Mitigation
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Conditional Methionine Rescue and C. fimi Cross-Feeding
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Conditional Methionine Rescue and C. fimi Cross-Feeding
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Conditional Methionine Rescue and C. fimi Cross-Feeding
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Resource Competition in Model Lignocellulose Medium
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Model_Lignocellulose_Formaldehyde_Crossfeeding_Community
+ node: Resource Competition in Model Lignocellulose Medium
+ reference: doi:10.3390/microorganisms9020321
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Moss_Microbe_Complex_Regolith_Biofertilizer
+ node: Moss-facilitated microbial colonization on Martian simulant
+ reference: doi:10.1016/j.ecolind.2025.114023
+ cache_matched: true
+ independent_primary_match: true
+ method: Existing abstract quotation visually matched to publisher-indexed primary abstract; full access403
+- record: Moss_Microbe_Complex_Regolith_Biofertilizer
+ node: Moss-facilitated microbial colonization on Martian simulant
+ reference: doi:10.1016/j.ecolind.2025.114023
+ cache_matched: true
+ independent_primary_match: true
+ method: Existing abstract quotation visually matched to publisher-indexed primary abstract; full access403
+- record: Moss_Microbe_Complex_Regolith_Biofertilizer
+ node: Moss-microbe co-treatment enhances barley growth and soil quality
+ reference: doi:10.1016/j.ecolind.2025.114023
+ cache_matched: true
+ independent_primary_match: true
+ method: Existing abstract quotation visually matched to publisher-indexed primary abstract; full access403
+- record: Moss_Microbe_Complex_Regolith_Biofertilizer
+ node: Moss-Microbe Rhizosphere Metabolite Accumulation
+ reference: doi:10.1016/j.ecolind.2025.114023
+ cache_matched: true
+ independent_primary_match: true
+ method: Existing abstract quotation visually matched to publisher-indexed primary abstract; full access403
+- record: Mucin_Glycan_MDSC_Synthetic_Gut_Community
+ node: Mucin-Type-Dependent MDSC Restructuring
+ reference: PMID:42109165
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Mucin_Glycan_MDSC_Synthetic_Gut_Community
+ node: Substrate-Dependent Mucin Glycan Degradation
+ reference: PMID:42109165
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+- record: Mucin_Glycan_MDSC_Synthetic_Gut_Community
+ node: Mucin-Type-Dependent Fermentation Profile
+ reference: PMID:42109165
+ cache_matched: true
+ independent_primary_match: true
+ method: Fresh primary XML, whitespace-only comparison
+edison:
+ required_for_this_repair: false
+ provider_submissions: 0
+ credits_spent: 0
+ rationale: Existing topology repaired; no new causal structure. Prior denied/pending scoped authorizations unchanged.
+limitations:
+- Baseline before paper research covered460 records and920 caches, including both roots and ignored/hidden YAML.
+ All13 existing nodes reviewed and retained;7 original arrows become3 after removing4 noncausal workflow/shared-outcome
+ links. No new nodes/arrows or paid provider calls.
+- Full primary main bodies, embedded tables and captions read for cyanobacteria, lignocellulose and mucin. Separate
+ supplements, raw data and original figure pixels were not audited. Moss publisher full access403; publisher-indexed
+ primary abstract visually checked, not full Methods. Abstract-only access is not proof no controls exist.
+- All21 graph quotations match selected existing caches;17 also match fresh primary XML with whitespace-only normalization
+ and4 moss quotations visually match the publisher-indexed abstract. Cache matching is not entailment. No complete
+ primary articles added to the repository; all920 caches preserved.
+- Core microbiome is operational, not universal or independent of host/inoculum; plasmid content and genomic function
+ support hypotheses, not measured exchange or fitness. Preserve positive replicated enrichment and stabilization.
+- Preserve formaldehyde lowering and positive growth assays; PCA control retains inhibition. Selected CM4744 methionine
+ rescue requires added producer substrate, and C.fimi-supported methylotroph growth is a separate assay. Canonical
+ species IDs preserved; strain metadata remains separate.
+- Preserve moss treatment gains and reported facilitation. Remove shared-outcome direction and reciprocal-fitness
+ labels, not positive growth. Retain mucin substrate effects, conditional composition mediation, O/N-glycan distinction
+ and measured profiles without inferred donor-recipient flux.
+- Scanned906 all-state issue titles/bodies for dedup with31 ignored/hidden local matches under explicit git/docs/site/cache
+ exclusions. Prior957/958/959 fixes retained;1093 is unrelated cache maintenance, not a duplicate. No exhaustive
+ historical PR-comment audit or global source-absence claim.
+- All raw non-graph blocks and456 other records preserved, not recertified. Metadata1624 remains OPEN after graph
+ repair. Repair1620-1623 remain OPEN until protected-main merge. Self-adversarial COMMENT is not independent approval.
+ The whole corpus is unfinished.
+records:
+- path: kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml
+ id: CommunityMech:000214
+ original_sha256: c49de615a48a456b57c25abccb8a6af18ba866c346437058031d25dbcec1c97a
+ record_sha256: c995dcaed8253c17933f5cc48404f8a09438eb99dc975df2d717a08c24a69023
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Retain putative plasmid enrichment; symbiotic mechanism is PARTIAL, not measured mutualism.; Retain genomic
+ functional potential without asserting measured cross-feeding.; Correct operational-core and host/source boundaries;
+ remove two analytical-workflow arrows.
+ renamed_nodes:
+ Plasmid-Mediated Cyanobacteria-Heterotroph Symbiosis: Putative Plasmid Functions in the Cyanobacterial Core
+ Microbiome
+ Host- and Inoculum-Independent Core Recruitment: Reproducible Core Recruitment Across Hosts and Inocula
+ node_decisions:
+ - node: Putative Plasmid Functions in the Cyanobacterial Core Microbiome
+ original_node: Plasmid-Mediated Cyanobacteria-Heterotroph Symbiosis
+ rationale: Retain putative plasmid enrichment; symbiotic mechanism is PARTIAL, not measured mutualism.
+ - node: Core Micronutrient and Anoxygenic Photosynthesis Functions
+ original_node: Core Micronutrient and Anoxygenic Photosynthesis Functions
+ rationale: Retain genomic functional potential without asserting measured cross-feeding.
+ - node: Reproducible Core Recruitment Across Hosts and Inocula
+ original_node: Host- and Inoculum-Independent Core Recruitment
+ rationale: Correct operational-core and host/source boundaries; remove two analytical-workflow arrows.
+ removed_node_decisions: []
+ edges_before:
+ - source: Host- and Inoculum-Independent Core Recruitment
+ target: Core Micronutrient and Anoxygenic Photosynthesis Functions
+ description: Reproducible 25-species core recruitment made it possible to statistically validate shared micronutrient-biosynthesis,
+ metabolite- transport, and anoxygenic-photosynthesis functions in the core microbiome.
+ - source: Host- and Inoculum-Independent Core Recruitment
+ target: Plasmid-Mediated Cyanobacteria-Heterotroph Symbiosis
+ description: The recruited core species were significantly enriched in plasmids whose encoded functions suggested
+ plasmid-mediated cyanobacteria-heterotroph symbiotic roles.
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions:
+ - source: Host- and Inoculum-Independent Core Recruitment
+ target: Core Micronutrient and Anoxygenic Photosynthesis Functions
+ description: Reproducible 25-species core recruitment made it possible to statistically validate shared micronutrient-biosynthesis,
+ metabolite- transport, and anoxygenic-photosynthesis functions in the core microbiome.
+ rationale: Removed noncausal analysis/engineering workflow or shared-treatment outcome link; see node rationale
+ and issue.
+ - source: Host- and Inoculum-Independent Core Recruitment
+ target: Plasmid-Mediated Cyanobacteria-Heterotroph Symbiosis
+ description: The recruited core species were significantly enriched in plasmids whose encoded functions suggested
+ plasmid-mediated cyanobacteria-heterotroph symbiotic roles.
+ rationale: Removed noncausal analysis/engineering workflow or shared-treatment outcome link; see node rationale
+ and issue.
+ references:
+ - PMID:40626910
+ issues:
+ - 1620
+ - 1624
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Model_Cyanobacterial_Consortia_Core_Microbiome/2026-10-07T024303Z-codex-050bf5.yaml
+ source_review:
+ PMID:40626910:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC12368963/fullTextXML
+ scope: Primary abstract and complete main body, embedded tables and captions; not separate supplements, raw
+ data or original figure pixels.
+- path: kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml
+ id: CommunityMech:000178
+ original_sha256: 6d6a5de1e606304c55b97639d797228890a844ef5fced1853a621965e0576d29
+ record_sha256: 1cdf5aaf167042938bdbdd8d9bcb0abaa322a0a4a99a7f05abd8b2658740e82c
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Retain toxic potential and production-to-mitigation link, not exclusive inhibition.; Retain measured
+ formaldehyde lowering; recipient rescue remains incomplete.; Correct methionine direction and preserve two condition-specific
+ positive growth assays, not autonomous mutualism.; Bound resource competition using PCA, supplement and spent-medium
+ controls; remove engineering-workflow arrow.
+ renamed_nodes:
+ C. fimi and M. extorquens Metabolite Exchange: Conditional Methionine Rescue and C. fimi Cross-Feeding
+ node_decisions:
+ - node: Formaldehyde Toxicity from Aromatic Breakdown
+ original_node: Formaldehyde Toxicity from Aromatic Breakdown
+ rationale: Retain toxic potential and production-to-mitigation link, not exclusive inhibition.
+ - node: Methylotrophic Formaldehyde Mitigation
+ original_node: Methylotrophic Formaldehyde Mitigation
+ rationale: Retain measured formaldehyde lowering; recipient rescue remains incomplete.
+ - node: Conditional Methionine Rescue and C. fimi Cross-Feeding
+ original_node: C. fimi and M. extorquens Metabolite Exchange
+ rationale: Correct methionine direction and preserve two condition-specific positive growth assays, not autonomous
+ mutualism.
+ - node: Resource Competition in Model Lignocellulose Medium
+ original_node: Resource Competition in Model Lignocellulose Medium
+ rationale: Bound resource competition using PCA, supplement and spent-medium controls; remove engineering-workflow
+ arrow.
+ removed_node_decisions: []
+ edges_before:
+ - source: Formaldehyde Toxicity from Aromatic Breakdown
+ target: Methylotrophic Formaldehyde Mitigation
+ description: Formaldehyde generated during P. putida growth on vanillic acid is the toxic intermediate that
+ M. extorquens consumes to mitigate inhibition of C. fimi in the model lignocellulose community.
+ - source: Resource Competition in Model Lignocellulose Medium
+ target: C. fimi and M. extorquens Metabolite Exchange
+ description: 'Competition for methionine was one inhibitory axis that could be resolved by adding an M. extorquens
+ strain engineered to excrete methionine for C. fimi.
+
+ '
+ edges_after:
+ - source: Formaldehyde Toxicity from Aromatic Breakdown
+ target: Methylotrophic Formaldehyde Mitigation
+ description: P. putida vanillic-acid metabolism supplies formaldehyde that M. extorquens can consume, reducing
+ the magnitude and duration of its accumulation. The biochemical production-to-removal link is supported; relief
+ of C. fimi growth inhibition is PARTIAL, because inhibition persists in the formaldehyde-free PCA control
+ and is not fully ameliorated by M. extorquens.
+ retained_edge_decisions:
+ - source: Formaldehyde Toxicity from Aromatic Breakdown
+ target: Methylotrophic Formaldehyde Mitigation
+ description: P. putida vanillic-acid metabolism supplies formaldehyde that M. extorquens can consume, reducing
+ the magnitude and duration of its accumulation. The biochemical production-to-removal link is supported; relief
+ of C. fimi growth inhibition is PARTIAL, because inhibition persists in the formaldehyde-free PCA control
+ and is not fully ameliorated by M. extorquens.
+ rationale: P. putida vanillic-acid metabolism supplies formaldehyde that M. extorquens can consume, reducing
+ the magnitude and duration of its accumulation. The biochemical production-to-removal link is supported; relief
+ of C. fimi growth inhibition is PARTIAL, because inhibition persists in the formaldehyde-free PCA control
+ and is not fully ameliorated by M. extorquens.
+ removed_edge_decisions:
+ - source: Resource Competition in Model Lignocellulose Medium
+ target: C. fimi and M. extorquens Metabolite Exchange
+ description: 'Competition for methionine was one inhibitory axis that could be resolved by adding an M. extorquens
+ strain engineered to excrete methionine for C. fimi.
+
+ '
+ rationale: Removed noncausal analysis/engineering workflow or shared-treatment outcome link; see node rationale
+ and issue.
+ references:
+ - doi:10.3390/microorganisms9020321
+ issues:
+ - 1621
+ - 1624
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community/2026-10-07T024303Z-codex-225f8a.yaml
+ source_review:
+ doi:10.3390/microorganisms9020321:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC7914493/fullTextXML
+ scope: Primary abstract and complete main body, embedded tables and captions; not separate supplements, raw
+ data or original figure pixels.
+- path: kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml
+ id: CommunityMech:000310
+ original_sha256: b2e7b2706ceac734515ae05501686a46f3d8416ff8fdfc9aee06d2f353ad70c7
+ record_sha256: 40f12b8a0f6ef7d64390819dd8c67282e465da6d24d5098d19080088dd04199d
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Retain reported colonization facilitation with PARTIAL mediation arrow.; Preserve treatment gains; remove
+ unsupported reciprocal-fitness classification and shared-outcome arrow.; Retain metabolite accumulation, not
+ traced cross-feeding or demonstrated growth mediation.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Moss-facilitated microbial colonization on Martian simulant
+ original_node: Moss-facilitated microbial colonization on Martian simulant
+ rationale: Retain reported colonization facilitation with PARTIAL mediation arrow.
+ - node: Moss-microbe co-treatment enhances barley growth and soil quality
+ original_node: Moss-microbe co-treatment enhances barley growth and soil quality
+ rationale: Preserve treatment gains; remove unsupported reciprocal-fitness classification and shared-outcome
+ arrow.
+ - node: Moss-Microbe Rhizosphere Metabolite Accumulation
+ original_node: Moss-Microbe Rhizosphere Metabolite Accumulation
+ rationale: Retain metabolite accumulation, not traced cross-feeding or demonstrated growth mediation.
+ removed_node_decisions: []
+ edges_before:
+ - source: Moss-facilitated microbial colonization on Martian simulant
+ target: Moss-microbe co-treatment enhances barley growth and soil quality
+ description: 'Moss-buffered microbial colonization on the low-porosity Martian simulant restores plant growth
+ responses in the combined moss-microbe treatment.
+
+ '
+ - source: Moss-microbe co-treatment enhances barley growth and soil quality
+ target: Moss-Microbe Rhizosphere Metabolite Accumulation
+ description: 'The same moss-microbe co-treatment that improved barley growth and soil quality also reprogrammed
+ the rhizosphere metabolite profile.
+
+ '
+ edges_after:
+ - source: Moss-facilitated microbial colonization on Martian simulant
+ target: Moss-microbe co-treatment enhances barley growth and soil quality
+ description: PARTIAL - Moss-associated buffering and microbial colonization are reported to restore plant growth
+ responses on the Martian simulant. This is a supported mechanistic interpretation of the combined treatment,
+ but the available abstract does not isolate colonization from organic inputs, soil changes or other growth-promoting
+ activities.
+ retained_edge_decisions:
+ - source: Moss-facilitated microbial colonization on Martian simulant
+ target: Moss-microbe co-treatment enhances barley growth and soil quality
+ description: PARTIAL - Moss-associated buffering and microbial colonization are reported to restore plant growth
+ responses on the Martian simulant. This is a supported mechanistic interpretation of the combined treatment,
+ but the available abstract does not isolate colonization from organic inputs, soil changes or other growth-promoting
+ activities.
+ rationale: PARTIAL - Moss-associated buffering and microbial colonization are reported to restore plant growth
+ responses on the Martian simulant. This is a supported mechanistic interpretation of the combined treatment,
+ but the available abstract does not isolate colonization from organic inputs, soil changes or other growth-promoting
+ activities.
+ removed_edge_decisions:
+ - source: Moss-microbe co-treatment enhances barley growth and soil quality
+ target: Moss-Microbe Rhizosphere Metabolite Accumulation
+ description: 'The same moss-microbe co-treatment that improved barley growth and soil quality also reprogrammed
+ the rhizosphere metabolite profile.
+
+ '
+ rationale: Removed noncausal analysis/engineering workflow or shared-treatment outcome link; see node rationale
+ and issue.
+ references:
+ - doi:10.1016/j.ecolind.2025.114023
+ issues:
+ - 1622
+ - 1624
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Moss_Microbe_Complex_Regolith_Biofertilizer/2026-10-07T024303Z-codex-ab7b96.yaml
+ source_review:
+ doi:10.1016/j.ecolind.2025.114023:
+ url: https://www.sciencedirect.com/science/article/pii/S1470160X25009550
+ scope: Primary publisher-indexed abstract only; full access403. No inference that controls are absent.
+- path: kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml
+ id: CommunityMech:000392
+ original_sha256: f9c333902ca32c15ae68dafe78ee1c56bd927329298fa2f2fc33cf9cabaf2dca
+ record_sha256: 4ef5925538ded3549c72fd84eaa0786922b4f9565de33946289104cef18a5d49
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml
+ scope: Whole record and every existing node/arrow; bounded causal review, not whole-record certification or exhaustive
+ extension.
+ summary: Retain causal substrate response; qualify composition-to-degradation mediation.; Preserve O-glycan versus
+ N-glycan and residual-added-glycan distinctions without claiming resolved cross-feeding.; Retain measured metabolite
+ profiles and prior analyte fix; pool changes are not transfer flux.
+ renamed_nodes: {}
+ node_decisions:
+ - node: Mucin-Type-Dependent MDSC Restructuring
+ original_node: Mucin-Type-Dependent MDSC Restructuring
+ rationale: Retain causal substrate response; qualify composition-to-degradation mediation.
+ - node: Substrate-Dependent Mucin Glycan Degradation
+ original_node: Substrate-Dependent Mucin Glycan Degradation
+ rationale: Preserve O-glycan versus N-glycan and residual-added-glycan distinctions without claiming resolved
+ cross-feeding.
+ - node: Mucin-Type-Dependent Fermentation Profile
+ original_node: Mucin-Type-Dependent Fermentation Profile
+ rationale: Retain measured metabolite profiles and prior analyte fix; pool changes are not transfer flux.
+ removed_node_decisions: []
+ edges_before:
+ - source: Mucin-Type-Dependent MDSC Restructuring
+ target: Substrate-Dependent Mucin Glycan Degradation
+ description: Community composition tracked with different O- and N-glycan degradation patterns on the four mucin
+ substrate regimes.
+ edges_after:
+ - source: Mucin-Type-Dependent MDSC Restructuring
+ target: Substrate-Dependent Mucin Glycan Degradation
+ description: PARTIAL - Substrate-selected community composition can change the available glycan-degrading enzyme
+ repertoire and thereby influence degradation. The paper reports coordinated composition and glycan changes,
+ including convergence of added-glycan degradation rates, but changes mucin substrate rather than holding substrate
+ fixed while selectively changing composition. Direct substrate accessibility and composition-mediated effects
+ are therefore not separated.
+ retained_edge_decisions:
+ - source: Mucin-Type-Dependent MDSC Restructuring
+ target: Substrate-Dependent Mucin Glycan Degradation
+ description: PARTIAL - Substrate-selected community composition can change the available glycan-degrading enzyme
+ repertoire and thereby influence degradation. The paper reports coordinated composition and glycan changes,
+ including convergence of added-glycan degradation rates, but changes mucin substrate rather than holding substrate
+ fixed while selectively changing composition. Direct substrate accessibility and composition-mediated effects
+ are therefore not separated.
+ rationale: PARTIAL - Substrate-selected community composition can change the available glycan-degrading enzyme
+ repertoire and thereby influence degradation. The paper reports coordinated composition and glycan changes,
+ including convergence of added-glycan degradation rates, but changes mucin substrate rather than holding substrate
+ fixed while selectively changing composition. Direct substrate accessibility and composition-mediated effects
+ are therefore not separated.
+ removed_edge_decisions: []
+ references:
+ - PMID:42109165
+ issues:
+ - 1623
+ - 1624
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Mucin_Glycan_MDSC_Synthetic_Gut_Community/2026-10-07T024304Z-codex-132d35.yaml
+ source_review:
+ PMID:42109165:
+ url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13158910/fullTextXML
+ scope: Primary abstract and complete main body, embedded tables and captions; not separate supplements, raw
+ data or original figure pixels.
diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv
index 76a4da9fc..9257d4b68 100644
--- a/reports/causal_graph_review/inventory.tsv
+++ b/reports/causal_graph_review/inventory.tsv
@@ -259,10 +259,10 @@ kb/communities/Microcoleus_Massilia_Cyanosphere_Urea_Mutualism.yaml CommunityMec
kb/communities/Microhabitat_Mineral_Fungal_Bacterial_SOM_SynCom.yaml CommunityMech:000407 5de3bf29957c111122030447d4062e79fe6a2f241f7e1ab2e213fb240d1f8b77 1 0 50.0 reports/causal_graph_review/decisions/20261007-four-records-batch73.yaml reviewed
kb/communities/Miscanthus_REE_Tailings_Nitrogen_SynCom10.yaml CommunityMech:000111 dbf02fa1c11105ba4622df78e4eb555143c05be77ba8abc843173ecae45994c5 3 2 90.0 reports/causal_graph_review/decisions/20261007-four-records-batch73.yaml reviewed
kb/communities/Mixed_Gallium_LED_Recovery_Consortium.yaml CommunityMech:000045 c9e9c9642b62987399daa4d82a3778b14f9cbb794085e7eb8d0dd562eb4dc117 4 3 90.0 reports/causal_graph_review/decisions/20261007-four-records-batch73.yaml needs_research
-kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml CommunityMech:000214 c49de615a48a456b57c25abccb8a6af18ba866c346437058031d25dbcec1c97a 3 2 100.0 pending
-kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml CommunityMech:000178 6d6a5de1e606304c55b97639d797228890a844ef5fced1853a621965e0576d29 4 2 100.0 pending
-kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml CommunityMech:000310 b2e7b2706ceac734515ae05501686a46f3d8416ff8fdfc9aee06d2f353ad70c7 3 2 100.0 pending
-kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml CommunityMech:000392 f9c333902ca32c15ae68dafe78ee1c56bd927329298fa2f2fc33cf9cabaf2dca 3 1 90.0 pending
+kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml CommunityMech:000214 c995dcaed8253c17933f5cc48404f8a09438eb99dc975df2d717a08c24a69023 3 0 65.0 reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml reviewed
+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
diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json
index 86a91342b..831877216 100644
--- a/reports/causal_graph_review/summary.json
+++ b/reports/causal_graph_review/summary.json
@@ -3,13 +3,13 @@
"semantic_review_rule": "Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.",
"records": 460,
"nodes": 1447,
- "edges": 624,
+ "edges": 620,
"records_without_nodes": 8,
- "records_without_edges": 163,
+ "records_without_edges": 164,
"review_status_counts": {
"needs_research": 25,
- "pending": 200,
- "reviewed": 235
+ "pending": 196,
+ "reviewed": 239
},
"structural_defects": [],
"network_audit": [
diff --git a/reports/causal_graph_review/validation-20261007-batch74.json b/reports/causal_graph_review/validation-20261007-batch74.json
new file mode 100644
index 000000000..48d9db933
--- /dev/null
+++ b/reports/causal_graph_review/validation-20261007-batch74.json
@@ -0,0 +1,1369 @@
+{
+ "base_commit": "b46d6272aa24de28b7e31995b74f7a306b387fff",
+ "scope": [
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml"
+ ],
+ "reference_validator_version": "0.1.7",
+ "results": [
+ {
+ "check": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-strict.tsv",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-strict.log",
+ "log_sha256": "16aaa6c7168014a32de60d49191caa711815928f542bee2a994d9061275ae708",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch74/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-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-strict.tsv\n"
+ },
+ {
+ "check": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-references.log",
+ "log_sha256": "4c1087a18fd3c5a42b3ea3d31a4644195e19cdc4a0314663028fed92f8e706e7",
+ "output_tail": "Validating kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-snippets.log",
+ "log_sha256": "1125ff0dde8c88267205b8aa843a32ef58e84b65fee929f651c20facd8785df0",
+ "output_tail": "# 26 evidence snippets scanned across 1 files\n MATCH 26\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": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-rank.log",
+ "log_sha256": "fe0bb95ecd7e531f617deba4bdab854b4410a2b304950c24f194becd8d9ed795",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000178\",\n \"name\": \"Model Lignocellulose Formaldehyde Cross-Feeding Community\",\n \"score\": 85.0,\n \"taxonomy\": 4,\n \"connected_taxa\": 4,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 4,\n \"downstream_edges\": 1,\n \"interaction_evidence\": 9,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community/2026-10-07T024303Z-codex-225f8a.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Moss_Microbe_Complex_Regolith_Biofertilizer-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Moss_Microbe_Complex_Regolith_Biofertilizer-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-strict.tsv",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-strict.log",
+ "log_sha256": "38e3038d1b10490a7e53de29969c3d59480741a3cb8620a0e8f6457225e954ad",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch74/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-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-strict.tsv\n"
+ },
+ {
+ "check": "Moss_Microbe_Complex_Regolith_Biofertilizer-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Moss_Microbe_Complex_Regolith_Biofertilizer-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-references.log",
+ "log_sha256": "a443b1ebd8ad7f86a0dcdf7096814bd6209589467f03652a44d299896c07ee35",
+ "output_tail": "Validating kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.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/Moss_Microbe_Complex_Regolith_Biofertilizer.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": "Moss_Microbe_Complex_Regolith_Biofertilizer-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-snippets.log",
+ "log_sha256": "389f1d2b093a1648cf407d53853e429a283f80eed2628a1a14cf1f38649ca780",
+ "output_tail": "# 12 evidence snippets scanned across 1 files\n MATCH 12\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": "Moss_Microbe_Complex_Regolith_Biofertilizer-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-rank.log",
+ "log_sha256": "f299df18dd7beb894ae88a09ef9e01ae099c74b50332be1c05f5eda2a37a3eae",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000310\",\n \"name\": \"Moss-Microbe Complex Regolith Biofertilizer\",\n \"score\": 83.3,\n \"taxonomy\": 3,\n \"connected_taxa\": 3,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 1,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Moss_Microbe_Complex_Regolith_Biofertilizer-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Moss_Microbe_Complex_Regolith_Biofertilizer/2026-10-07T024303Z-codex-ab7b96.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Moss_Microbe_Complex_Regolith_Biofertilizer-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-strict.tsv",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-strict.log",
+ "log_sha256": "6d4d97b2cbdff69e570acbbf802b466b606f6967e292a68b7800f5197872021a",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch74/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-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-strict.tsv\n"
+ },
+ {
+ "check": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-references.log",
+ "log_sha256": "bd5d3a158dc9dd8e4aa3c620a874dda00680b3ba9b812fb31b9f9df10748d3ef",
+ "output_tail": "Validating kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-snippets.log",
+ "log_sha256": "d86917a18bdb9e1b11354979173a899b6230dfebe190bee96f5640fd21fc49b8",
+ "output_tail": "# 30 evidence snippets scanned across 1 files\n MATCH 28\n RENDERING 2\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 2 kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.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": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-rank.log",
+ "log_sha256": "7e8c38b87601305ef84b24a54205879348a2d64f1267b7d43fc02758ab3e1652",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000392\",\n \"name\": \"Mucin Glycan-Degrading MDSC Synthetic Gut Community\",\n \"score\": 80.0,\n \"taxonomy\": 14,\n \"connected_taxa\": 14,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 1,\n \"interaction_evidence\": 3,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Mucin_Glycan_MDSC_Synthetic_Gut_Community-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Mucin_Glycan_MDSC_Synthetic_Gut_Community/2026-10-07T024304Z-codex-132d35.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Mucin_Glycan_MDSC_Synthetic_Gut_Community-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-strict.tsv",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-strict.log",
+ "log_sha256": "d122334b9eecc0be3f02fc6a3e6c7380489f61413b9b51990adc3dbe8877ce8e",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch74/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-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-strict.tsv\n"
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-references.log",
+ "log_sha256": "baaef0ba58fee1ad13f98e141c5b119927d2adace60f760d6e4e6899182b126b",
+ "output_tail": "Validating kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.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/Model_Cyanobacterial_Consortia_Core_Microbiome.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": "Model_Cyanobacterial_Consortia_Core_Microbiome-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-snippets.log",
+ "log_sha256": "6fd22c7b42f139e3b66a27210ad3d8968c80af940879c7074184305812838cca",
+ "output_tail": "# 13 evidence snippets scanned across 1 files\n MATCH 13\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": "Model_Cyanobacterial_Consortia_Core_Microbiome-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-rank.log",
+ "log_sha256": "d4967c1f7a67ba038a16c10b0a628f947cad26e9c18a183687fee0f8abc588bb",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000214\",\n \"name\": \"Model Cyanobacterial Consortia Core Microbiome\",\n \"score\": 65.0,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Model_Cyanobacterial_Consortia_Core_Microbiome/2026-10-07T024303Z-codex-050bf5.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-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-batch74/inventory.log",
+ "log_sha256": "d78844fedfeacef329e7769b6dfe380bfb85d72476204febf7c2d2398c65f102",
+ "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\": 25,\n \"pending\": 196,\n \"reviewed\": 239\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-batch74/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-batch74/rank-all.log",
+ "log_sha256": "4c582286e34af3cd9d52a0aaf978ab1178bf0f007fb9731ed24962da695ec88a",
+ "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-batch74/render.log",
+ "log_sha256": "d8d9ef6f5ca625c004d6aa2bf19f5a34605d27d6ead44ce0c31bc2461a121834",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch74/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch74/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch74/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-batch74/render-repeat.log",
+ "log_sha256": "d8d9ef6f5ca625c004d6aa2bf19f5a34605d27d6ead44ce0c31bc2461a121834",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch74/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch74/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch74/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-batch73')),('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-batch74/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_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-batch74/regressions.log",
+ "log_sha256": "30410ca659fe377ccde3279c65585bbbc76d68d8a5fdc7cebfa009f23c4198e4",
+ "output_tail": "........................................................................ [ 10%]\n........................................................................ [ 21%]\n........................................................................ [ 32%]\n........................................................................ [ 43%]\n........................................................................ [ 54%]\n........................................................................ [ 65%]\n........................................................................ [ 76%]\n........................................................................ [ 87%]\n........................................................................ [ 97%]\n.............. [100%]\n662 passed in 202.52s (0:03:22)\n"
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch74.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/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_batch74.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/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-batch74/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-batch74.yaml').read_text())\nmanifest=json.loads(P('/private/tmp/communitymech-batch74/primary-manifest.json').read_text())\nsources={v['reference']:''.join(P(v['extracted_body']).read_text().split()) for v in manifest.values()}\nsources['doi:10.3390/microorganisms9020321']=sources['PMID:33557371']\nfor p,h in ledger['primary_artifacts'].items():\n assert hashlib.sha256(P(p).read_bytes()).hexdigest()==h\nfresh=visual=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 if e['reference'] in sources:\n assert ''.join(e['snippet'].split()) in sources[e['reference']]\n fresh+=1\n else:\n assert e['reference']=='doi:10.1016/j.ecolind.2025.114023'\n visual+=1\nassert (fresh,visual)==(17,4)\nassert sum(len(r['node_decisions']) for r in ledger['records'])==13\nassert sum(len(r['edges_before']) for r in ledger['records'])==7\nassert sum(len(r['edges_after']) for r in ledger['records'])==3\nassert sum(len(r['removed_edge_decisions']) for r in ledger['records'])==4\nassert sum(r['curation_events_added'] for r in ledger['records'])==4\nassert ledger['edison']['provider_submissions']==0\nprint(json.dumps(dict(automatically_primary_matched=fresh,publisher_abstract_visual_matches=visual,new_nodes_or_arrows=0,complete_primary_main_texts_read=3,separate_supplements_or_original_figure_pixels_inspected=False)))\n"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/primary-graph-proof.log",
+ "log_sha256": "da6401267c02f26fef0620c5fd5c2d42c43bb39c700264c619c728181f9bca87",
+ "output_tail": "{\"automatically_primary_matched\": 17, \"publisher_abstract_visual_matches\": 4, \"new_nodes_or_arrows\": 0, \"complete_primary_main_texts_read\": 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_batch74.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/focused-final.log",
+ "log_sha256": "661ce46cf0655d2a19dc9dab8b98e082fdf8f69e99aeb99b519476a9fba76b9e",
+ "output_tail": "................ [100%]\n16 passed in 17.32s\n"
+ }
+ ],
+ "limitations": [
+ "Baseline before paper research covered460 records and920 caches, including both roots and ignored/hidden YAML. All13 existing nodes reviewed and retained;7 original arrows become3 after removing4 noncausal workflow/shared-outcome links. No new nodes/arrows or paid provider calls.",
+ "Full primary main bodies, embedded tables and captions read for cyanobacteria, lignocellulose and mucin. Separate supplements, raw data and original figure pixels were not audited. Moss publisher full access403; publisher-indexed primary abstract visually checked, not full Methods. Abstract-only access is not proof no controls exist.",
+ "All21 graph quotations match selected existing caches;17 also match fresh primary XML with whitespace-only normalization and4 moss quotations visually match the publisher-indexed abstract. Cache matching is not entailment. No complete primary articles added to the repository; all920 caches preserved.",
+ "Core microbiome is operational, not universal or independent of host/inoculum; plasmid content and genomic function support hypotheses, not measured exchange or fitness. Preserve positive replicated enrichment and stabilization.",
+ "Preserve formaldehyde lowering and positive growth assays; PCA control retains inhibition. Selected CM4744 methionine rescue requires added producer substrate, and C.fimi-supported methylotroph growth is a separate assay. Canonical species IDs preserved; strain metadata remains separate.",
+ "Preserve moss treatment gains and reported facilitation. Remove shared-outcome direction and reciprocal-fitness labels, not positive growth. Retain mucin substrate effects, conditional composition mediation, O/N-glycan distinction and measured profiles without inferred donor-recipient flux.",
+ "Scanned906 all-state issue titles/bodies for dedup with31 ignored/hidden local matches under explicit git/docs/site/cache exclusions. Prior957/958/959 fixes retained;1093 is unrelated cache maintenance, not a duplicate. No exhaustive historical PR-comment audit or global source-absence claim.",
+ "All raw non-graph blocks and456 other records preserved, not recertified. Metadata1624 remains OPEN after graph repair. Repair1620-1623 remain OPEN until protected-main merge. Self-adversarial COMMENT is not independent approval. The whole corpus is unfinished.",
+ "Exact HTML-description parser and repeat-render checks, not browser screenshots. Post-commit docs-current is separate."
+ ],
+ "superseded_checks": [
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-strict.tsv",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-strict.log",
+ "log_sha256": "d122334b9eecc0be3f02fc6a3e6c7380489f61413b9b51990adc3dbe8877ce8e",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch74/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-batch74/Model_Cyanobacterial_Consortia_Core_Microbiome-strict.tsv\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-references.log",
+ "log_sha256": "baaef0ba58fee1ad13f98e141c5b119927d2adace60f760d6e4e6899182b126b",
+ "output_tail": "Validating kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.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/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-snippets.log",
+ "log_sha256": "6fd22c7b42f139e3b66a27210ad3d8968c80af940879c7074184305812838cca",
+ "output_tail": "# 13 evidence snippets scanned across 1 files\n MATCH 13\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",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-rank.log",
+ "log_sha256": "d4967c1f7a67ba038a16c10b0a628f947cad26e9c18a183687fee0f8abc588bb",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000214\",\n \"name\": \"Model Cyanobacterial Consortia Core Microbiome\",\n \"score\": 65.0,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml\"\n }\n]\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "Model_Cyanobacterial_Consortia_Core_Microbiome-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Model_Cyanobacterial_Consortia_Core_Microbiome/2026-10-07T024303Z-codex-050bf5.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-Model_Cyanobacterial_Consortia_Core_Microbiome-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "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-batch74/superseded-inventory.log",
+ "log_sha256": "d78844fedfeacef329e7769b6dfe380bfb85d72476204febf7c2d2398c65f102",
+ "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\": 25,\n \"pending\": 196,\n \"reviewed\": 239\n },\n \"structural_defects\": []\n}\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "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-batch74/superseded-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",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "rank-all",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-rank-all.log",
+ "log_sha256": "4c582286e34af3cd9d52a0aaf978ab1178bf0f007fb9731ed24962da695ec88a",
+ "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",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "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-batch74/superseded-render.log",
+ "log_sha256": "d8d9ef6f5ca625c004d6aa2bf19f5a34605d27d6ead44ce0c31bc2461a121834",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch74/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch74/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch74/docs/index.html\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "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-batch74/superseded-render-repeat.log",
+ "log_sha256": "d8d9ef6f5ca625c004d6aa2bf19f5a34605d27d6ead44ce0c31bc2461a121834",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch74/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch74/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch74/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch74/docs/index.html\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "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-batch73')),('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-batch74/superseded-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",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "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_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-batch74/superseded-regressions.log",
+ "log_sha256": "ec1482127ec3f54b74d33d875675cee93c7389f6a6baef50b8c380d66e008a60",
+ "output_tail": "........................................................................ [ 10%]\n........................................................................ [ 21%]\n........................................................................ [ 32%]\n........................................................................ [ 43%]\n........................................................................ [ 54%]\n........................................................................ [ 65%]\n........................................................................ [ 76%]\n........................................................................ [ 87%]\n........................................................................ [ 97%]\n.............. [100%]\n662 passed in 219.43s (0:03:39)\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch74.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-black.log",
+ "log_sha256": "1a56c7cd8457fd05d978cfbd139d7bfd86e86acaa9b57668e718ef8bccc0cf48",
+ "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n1 file would be left unchanged.\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "ruff",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff",
+ "check",
+ "tests/test_causal_review_batch74.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-ruff.log",
+ "log_sha256": "82b3e6a6c090a57601d22943bd23fca9218d1031dbe5a7b754092f9a156b4f18",
+ "output_tail": "All checks passed!\n",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ },
+ {
+ "check": "diff-check",
+ "command": [
+ "git",
+ "diff",
+ "--check"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch74/superseded-diff-check.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "output_tail": "",
+ "disposition": "Before stale core-evidence explanation correction; rerun required."
+ }
+ ],
+ "snippet_counts_by_record": {
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml": {
+ "MATCH": 13,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml": {
+ "MATCH": 26,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml": {
+ "MATCH": 12,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml": {
+ "MATCH": 28,
+ "RENDERING": 2,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ }
+ },
+ "unchanged_raw_blocks": 67,
+ "unchanged_record_files": 456,
+ "unchanged_cache_files": 920,
+ "edison": {
+ "required_for_this_repair": false,
+ "provider_submissions": 0,
+ "credits_spent": 0,
+ "rationale": "Existing topology repaired; no new causal structure. Prior denied/pending scoped authorizations unchanged."
+ },
+ "primary_artifacts": {
+ "/private/tmp/communitymech-batch74/baseline.json": "4fcf62f971101ea8197a4ac264f71e48d70b28fd2d219aa478d0f310f83d4eb9",
+ "/private/tmp/communitymech-batch74/cyanobacteria-metadata.json": "a30ed96596030facfd2665b0075e12b2f366d0c4298a061df1dfc3c15df80c50",
+ "/private/tmp/communitymech-batch74/cyanobacteria-primary.txt": "de09c8612dfc9428c7dbdd4e91689e8fd54d9e10023c22513bf57f7adc2d7f32",
+ "/private/tmp/communitymech-batch74/cyanobacteria-primary.xml": "d82ce2de2afa9ff51da61455fdd2bebd6f6422610b1a06a655e04cba47504dd9",
+ "/private/tmp/communitymech-batch74/issue-matches.json": "0e3aecfee303560a04a302b38e6ab32464a5b637846de59cea6fbed751a2f98e",
+ "/private/tmp/communitymech-batch74/lignocellulose-metadata.json": "1b81e729c0f63f16284c1bfca29582eeb1f4127a5d3353aaacdb1368cf50f35f",
+ "/private/tmp/communitymech-batch74/lignocellulose-primary.txt": "cc656b23348ad3f1f9b95b1643c541b100266b03b2725fd3c1798d07135c3124",
+ "/private/tmp/communitymech-batch74/lignocellulose-primary.xml": "9069f8368a141e4acc92553ce4ee25cc053f17b02bb71309b95a51a3c442c7ea",
+ "/private/tmp/communitymech-batch74/mucin-metadata.json": "3b0fa960f713204b88dc36d20c5aa97830fdeea369c19e4bc144d89c016de2de",
+ "/private/tmp/communitymech-batch74/mucin-primary.txt": "16874be4a038a16a34cac0b11d079c1162fb9028d3dd60afe0d59ccf65b6e39e",
+ "/private/tmp/communitymech-batch74/mucin-primary.xml": "dbbd242f1536d37ff6e6fe0a57f5ab318d4f75c433f1a66951ba6ee4d6ed43c2",
+ "/private/tmp/communitymech-batch74/primary-manifest.json": "07268fc559f6806ddea24a1c9199ba41a76ae9388e292f73cad7b3a6e834b62c"
+ },
+ "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. Removing group-level directional taxa does 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": 25,
+ "pending": 196,
+ "reviewed": 239
+ },
+ "structural_defects": []
+ },
+ "tested_file_sha256": {
+ "reports/causal_graph_review/decisions/20261007-four-records-batch74.yaml": "4d975cf5114b018229e3fc8408b87ea6b43e50d5e40569c564aeefa4daffa8ca",
+ "tests/test_causal_review_batch74.py": "46f1cbe401d385001730f356bb6349965b3452c00c0f88f7b714d62f2b0c2cff",
+ "kb/communities/Model_Cyanobacterial_Consortia_Core_Microbiome.yaml": "c995dcaed8253c17933f5cc48404f8a09438eb99dc975df2d717a08c24a69023",
+ "kb/communities/Model_Lignocellulose_Formaldehyde_Crossfeeding_Community.yaml": "1cdf5aaf167042938bdbdd8d9bcb0abaa322a0a4a99a7f05abd8b2658740e82c",
+ "kb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml": "40f12b8a0f6ef7d64390819dd8c67282e465da6d24d5098d19080088dd04199d",
+ "kb/communities/Mucin_Glycan_MDSC_Synthetic_Gut_Community.yaml": "4ef5925538ded3549c72fd84eaa0786922b4f9565de33946289104cef18a5d49",
+ "reports/causal_graph_review/README.md": "e8279363f25533e6b67b674def497791a94daea1f4c0219c7ac961ce72542a05"
+ },
+ "status": "verified_assay_boundary_graph_review",
+ "pre_research_baseline": {
+ "base_commit": "b46d6272aa24de28b7e31995b74f7a306b387fff",
+ "base_tree": "31c6bbcfe3e24737b3f4e5291d8ed1235e53160e",
+ "research_worktree": "/private/tmp/communitymech-causal-batch73",
+ "checks": [
+ {
+ "name": "rank",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_code": 0,
+ "log": "/private/tmp/communitymech-batch74/baseline-rank.log",
+ "sha256": "d7346646f7516936c26260d0a32ae1fa38e1bd1b7afd7328411c83abfd39f2b1",
+ "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-batch74/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-batch74/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-batch74/baseline-downstream.log",
+ "sha256": "79f803acbc4f124d0b9bbc4715112e89d1a7e10d6f1102722b5a61b473f1f120",
+ "output_tail": "234: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\nkb/communities/Dual_Bacillus_coagulans_Pseudomonas_putida_Lactic_Acid_Coculture.yaml:134: downstream:\nkb/communities/Dual_Bacillus_coagulans_Pseudomonas_putida_Lactic_Acid_Coculture.yaml:189: downstream:\nkb/communities/Deepwater_Horizon_Deep_Sea_Oil_Plume_Succession.yaml:197: downstream:\nkb/communities/Deepwater_Horizon_Deep_Sea_Oil_Plume_Succession.yaml:241: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:138: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:182: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:232: downstream:\nkb/communities/Geobacter_Pseudomonas_Formate_Fumarate_Electroactive_Coculture.yaml:191: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:125: downstream:\nkb/communities/SO3_BS3_Lithium_Battery_Bioleaching_Consortium.yaml:141: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:268: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:317: downstream:\nkb/communities/Cable_Bacteria_Photosynthetic_Biofilm_Sediment.yaml:80: downstream:\nkb/communities/Cable_Bacteria_Photosynthetic_Biofilm_Sediment.yaml:117: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:65: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:98: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:131: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:155: downstream:\nkb/communities/Chromium_Sulfur_Reduction_Enrichment.yaml:159: downstream:\nkb/communities/Chromium_Sulfur_Reduction_Enrichment.yaml:200: downstream:\nkb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml:169: downstream:\nkb/communities/Moss_Microbe_Complex_Regolith_Biofertilizer.yaml:199: downstream:\n"
+ }
+ ],
+ "baseline_sha256": "4fcf62f971101ea8197a4ac264f71e48d70b28fd2d219aa478d0f310f83d4eb9"
+ },
+ "reference_validator_caveat": "All four full-record reference validators exit0. CLI Total checks counts issues, not executed checks. All21 graph quotations match selected caches;17 automatically match fresh primary XML and4 moss quotations were visually checked against the publisher-indexed primary abstract. Cache matching is not entailment. Full moss access403; all920 caches unchanged, not recertified. Prior batch73 gallium non-graph reference exception remains outside this batch."
+}
diff --git a/tests/test_causal_review_batch74.py b/tests/test_causal_review_batch74.py
new file mode 100644
index 000000000..5e950fb82
--- /dev/null
+++ b/tests/test_causal_review_batch74.py
@@ -0,0 +1,131 @@
+"""Keep positive assay results while bounding causal interpretations."""
+
+import hashlib
+from pathlib import Path
+
+import yaml
+
+ROOT = Path(__file__).resolve().parents[1]
+LEDGER = ROOT / "reports/causal_graph_review/decisions/20261007-four-records-batch74.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_core_enrichment_is_not_universal_membership_or_proven_symbiosis():
+ _, _, docs = records()
+ plasmid, function, core = docs[0]["ecological_interactions"]
+ assert plasmid["name"].startswith("Putative Plasmid")
+ assert "98%" in plasmid["description"]
+ assert "HYPOTHESIZED" in plasmid["description"]
+ assert "20 of 25" in function["description"]
+ assert "18.5%-68.5%" in core["description"]
+ assert "cyanobacteria-free controls were absent" in core["description"]
+ assert "not absence of host or inoculum effects" in core["evidence"][0]["explanation"]
+ assert "independent recruitment" not in core["evidence"][0]["explanation"]
+ assert all("interaction_type" not in node for node in [plasmid, function, core])
+ assert all("downstream" not in node for node in [plasmid, function, core])
+
+
+def test_detoxification_retains_positive_effect_and_formaldehyde_free_control():
+ _, _, docs = records()
+ toxin, mitigation, _, competition = docs[1]["ecological_interactions"]
+ assert "0.6-0.8 mM" in toxin["description"]
+ assert "0.5 mM" in toxin["description"]
+ edge = toxin["downstream"][0]
+ assert edge["target"] == mitigation["name"]
+ assert "formaldehyde-free PCA control" in edge["description"]
+ assert "lowers measurable formaldehyde" in mitigation["description"]
+ assert "not completely ameliorate" in mitigation["description"]
+ assert "secreted inhibitor" in competition["description"]
+ assert "downstream" not in competition
+
+
+def test_methionine_direction_and_conditional_rescue_are_explicit():
+ _, _, docs = records()
+ exchange = docs[1]["ecological_interactions"][2]
+ assert exchange["interaction_type"] == "CROSS_FEEDING"
+ assert exchange["source_taxon"]["term"]["id"] == "NCBITaxon:408"
+ assert exchange["target_taxon"]["term"]["id"] == "NCBITaxon:1708"
+ for term in ["CM4744", "methanol or succinate", "wild-type", "reverse-direction"]:
+ assert term in exchange["description"]
+ assert "do not demonstrate autonomous" in exchange["description"]
+ assert exchange["metabolites"][0]["term"]["id"] == "CHEBI:16811"
+
+
+def test_moss_outcomes_are_preserved_without_shared_outcome_direction():
+ ledger, _, docs = records()
+ colonization, growth, metabolites = docs[2]["ecological_interactions"]
+ assert colonization["downstream"][0]["description"].startswith("PARTIAL -")
+ assert "significant combined-treatment improvements" in growth["description"]
+ assert "downstream" not in growth
+ assert "interaction_type" not in growth and "interaction_type" not in metabolites
+ assert "D-ribose and D-gluconate" in metabolites["description"]
+ assert "parallel reported treatment outcomes" in metabolites["description"]
+ assert sum("visually matched" in s["method"] for s in ledger["snippet_checks"]) == 4
+
+
+def test_mucin_preserves_substrate_response_and_glycan_distinctions():
+ _, _, docs = records()
+ composition, degradation, fermentation = docs[3]["ecological_interactions"]
+ assert composition["downstream"][0]["description"].startswith("PARTIAL -")
+ assert "rather than holding substrate fixed" in composition["downstream"][0]["description"]
+ assert "N-glycans are completely degraded" in degradation["description"]
+ assert "some remain detectable at120 h" in degradation["description"]
+ assert "yeast-extract fermentation" in fermentation["description"]
+ assert len(docs[3]["discussions"]) == 2
+ assert (
+ docs[3]["discussions"][0]["discussion_id"] == "mucin-mdsc-pairwise-crossfeeding-resolution"
+ )
+ assert docs[3]["curation_history"][-2]["action"] == "FIX_MDSC_GTDB_GROUNDINGS"
+
+
+def test_all_nodes_and_original_arrows_have_decisions_without_extensions():
+ ledger, rows, docs = records()
+ assert sum(len(row["node_decisions"]) for row in rows) == 13
+ assert sum(len(row["edges_before"]) for row in rows) == 7
+ assert sum(len(row["edges_after"]) for row in rows) == 3
+ assert sum(len(row["removed_edge_decisions"]) for row in rows) == 4
+ assert ledger["cache_matched_graph_snippet_count"] == 21
+ assert ledger["edison"]["provider_submissions"] == 0
+ assert ledger["unresolved_non_graph_issues"] == [1624]
+ 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"]
+ }
+ retained = {(e["source"], e["target"]) for e in row["edges_after"]}
+ removed = {
+ (renames.get(e["source"], e["source"]), renames.get(e["target"], e["target"]))
+ for e in row["removed_edge_decisions"]
+ }
+ assert original == retained | removed and not retained & removed
+ 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["discussions"]
+ for a in d["attaches_to"]
+ if a.startswith("ecological_interactions#")
+ )
+
+
+def test_record_hashes_and_append_only_histories_are_bound_to_review():
+ ledger, rows, docs = records()
+ assert ledger["independent_approval"] is False
+ for row, doc in zip(rows, docs, strict=True):
+ assert row["status"] == "reviewed" and row["outcome"] == "changed"
+ assert row["allowed_changed_fields"] == [
+ "curation_history",
+ "discussions",
+ "ecological_interactions",
+ ]
+ assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"]
+ assert row["curation_events_added"] == len(row["history_files"]) == 1
+ assert doc["curation_history"][-1]["llm_assisted"] is True
+ assert all((ROOT / path).exists() for path in row["history_files"])