diff --git a/docs/communities/Infant_Gut_DNA_Phage_Succession_Community.html b/docs/communities/Infant_Gut_DNA_Phage_Succession_Community.html
index 62fd2078e..d4505fa17 100644
--- a/docs/communities/Infant_Gut_DNA_Phage_Succession_Community.html
+++ b/docs/communities/Infant_Gut_DNA_Phage_Succession_Community.html
@@ -547,17 +547,12 @@
"Enrichment in genes for surface adhesion, iron acquisition, and carbohydrate degradation may explain persistence"
+ "Bifidobacterium persisters dedicated a significantly higher percentage of their genomes to CAZymes"
@@ -756,9 +738,8 @@
-
Bacteroides and Bifidobacterium were the main genera among the approximately 11 percent of early colonizer strains that persisted through the first year of life.
+
Bacteroides and Bifidobacterium were prominent among 59 of 560 early colonizer strains that persisted into late first-year sampling. The approximately 11 percent denominator is all eligible early strains, not each genus separately. Early detection was within the first two months; persistence required detection at month eight or later, accommodating missing or inadequate month-twelve samples. Strain matching used 99.999 percent population ANI over at least half the compared genome. This is observed persistence, not evidence that every member expressed adhesion or iron-acquisition traits.
@@ -775,23 +756,6 @@
Bacteroides and Bifidobacterium First-Year Persistence
-
Biological Processes:
-
-
@@ -834,6 +798,25 @@
Evidence
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which taxon-specific traits causally contribute to strain persistence?
+
+
The maternal-sharing and Bifidobacterium CAZyme routes remain partial models. E. coli iron-acquisition, adhesion and toxin annotations are positive genetic-potential results from three persisters versus 25 non-persisters, not expression, flux or knockout evidence. All three E. coli persisters came from preterm infants in a disease-enriched sample. #1515 tracks missing exact E. coli representation and valid trait structure; do not transfer those results to other taxa or erase them as negative evidence. Prematurity, early antibiotics, hospitalization and feeding covary, so the birth-status comparison is not an isolated cause. Full cached primary main text, Methods, Table 1 and figure captions read, but not external supplementary files, raw data, code or original images. One-community Edison dry run only; no paid report or new graph structure. Canonical taxonomy and non-graph fields are preserved, not recertified.
+
+
Attaches to: ecological_interactions#Maternal Strain Sharing and Persistence Association, ecological_interactions#Bifidobacterium Persister Carbohydrate-Gene Enrichment, ecological_interactions#Bacteroides and Bifidobacterium First-Year Persistence
+
+
+
+
+
+
+
@@ -1076,20 +1059,16 @@
Environmental Factors
(function() {
var intId = "interaction:0";
- var intType = "COLONIZATION_FACILITATION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
-
- processes.push("biological process involved in interspecies interaction between organisms");
-
-
var evidenceCount = 1;
nodes.push({
id: intId,
- label: "Maternal Strain Seeding Drives Persistence",
+ label: "Maternal Strain Sharing and Persistence Association",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1100,28 +1079,35 @@
Environmental Factors
+ var participantKeys = [
+
+ "maternal-origin gut bacterial strains"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
(function() {
var intId = "interaction:1";
- var intType = "COMMENSALISM";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
- processes.push("iron ion transport");
-
processes.push("carbohydrate metabolic process");
- processes.push("cell adhesion");
-
var evidenceCount = 1;
nodes.push({
id: intId,
- label: "Persistence Traits Encoded in Genomes",
+ label: "Bifidobacterium Persister Carbohydrate-Gene Enrichment",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1132,21 +1118,26 @@
Environmental Factors
+ var participantKeys = [
+
+ "persistent infant Bifidobacterium colonizers"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
(function() {
var intId = "interaction:2";
- var intType = "COLONIZATION_FACILITATION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
-
- processes.push("carbohydrate metabolic process");
-
- processes.push("cell adhesion");
-
-
var evidenceCount = 2;
nodes.push({
diff --git a/history/records/Infant_Gut_DNA_Phage_Succession_Community/2026-10-06T171848Z-codex-693fe8.yaml b/history/records/Infant_Gut_DNA_Phage_Succession_Community/2026-10-06T171848Z-codex-693fe8.yaml
new file mode 100644
index 000000000..318bd92af
--- /dev/null
+++ b/history/records/Infant_Gut_DNA_Phage_Succession_Community/2026-10-06T171848Z-codex-693fe8.yaml
@@ -0,0 +1,25 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml
+ slug: Infant_Gut_DNA_Phage_Succession_Community
+session:
+ id: 2026-10-06T171848Z-codex-693fe8
+ timestamp: '2026-10-06T17:18:48Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1511
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Bound phage persistence to strain-resolved associations and partial maternal/recoding
+ mechanisms.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
diff --git a/history/records/Infant_Gut_Prebiotic_Response_SynCom/2026-10-06T171849Z-codex-b60937.yaml b/history/records/Infant_Gut_Prebiotic_Response_SynCom/2026-10-06T171849Z-codex-b60937.yaml
new file mode 100644
index 000000000..b40ade277
--- /dev/null
+++ b/history/records/Infant_Gut_Prebiotic_Response_SynCom/2026-10-06T171849Z-codex-b60937.yaml
@@ -0,0 +1,25 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml
+ slug: Infant_Gut_Prebiotic_Response_SynCom
+session:
+ id: 2026-10-06T171849Z-codex-b60937
+ timestamp: '2026-10-06T17:18:49Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1512
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Preserve SynCom omission and acid-challenge results without direct-transfer or
+ universal pH claims.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
diff --git a/history/records/Infant_Gut_Strain_Persistence_Maternal_Community/2026-10-06T171849Z-codex-e76020.yaml b/history/records/Infant_Gut_Strain_Persistence_Maternal_Community/2026-10-06T171849Z-codex-e76020.yaml
new file mode 100644
index 000000000..fe12beeb3
--- /dev/null
+++ b/history/records/Infant_Gut_Strain_Persistence_Maternal_Community/2026-10-06T171849Z-codex-e76020.yaml
@@ -0,0 +1,24 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml
+ slug: Infant_Gut_Strain_Persistence_Maternal_Community
+session:
+ id: 2026-10-06T171849Z-codex-e76020
+ timestamp: '2026-10-06T17:18:49Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1513
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Correct persistence trait ownership and preserve taxon-specific genomic associations.
+ details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
diff --git a/kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml b/kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml
index be501378d..256c38fe9 100644
--- a/kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml
+++ b/kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml
@@ -65,93 +65,101 @@ taxonomy:
explanation: Supports Bacteroides as the persistent host for the early
phage colonizers.
ecological_interactions:
-- name: Maternal Phage Seeding and Long-Term Persistence
- description: Mothers seed infants with DNA phages that preferentially infect
- Bacteroides, with about 9 percent of these early colonizers persisting for
- 3 years and reaching adult-like phageome complexity.
- interaction_type: PREDATION
- scope: PAIRWISE
- source_taxon:
- preferred_term: maternally transmitted DNA bacteriophages
+- name: Maternal Phage Sharing and Persistence Association
+ description: Strain-resolved metagenomes associate maternal sharing with infant phage persistence. The 155 of
+ 1801 early phages classified as persisters came from the 40 infants with adequate follow-up; the roughly 9 percent
+ is not a persistence rate for every maternally shared phage or Bacteroides host. Maternal classification uses
+ sharing in early mother-infant samples. Predicted hosts and temperate lifestyles do not establish universal
+ lytic predation. The canonical participants represent a maternal/Bacteroides-associated subset of the broader
+ phage cohort, not all measured phages.
+ scope: COMMUNITY_LEVEL
+ evidence:
+ - reference: PMID:38096814
+ supports: SUPPORT
+ evidence_source: IN_VIVO
+ snippet: early phage colonizers, which are mostly maternally transmitted and infect Bacteroides, persist for
+ 3 years
+ explanation: Supports the positive maternal-sharing and persistence association, not a controlled seeding perturbation
+ or lytic predation for every phage.
+ participating_taxa:
+ - preferred_term: maternally transmitted DNA bacteriophages
term:
id: NCBITaxon:10239
label: Viruses
- target_taxon:
- preferred_term: infant Bacteroides hosts
+ - preferred_term: infant Bacteroides hosts
term:
id: NCBITaxon:816
label: Bacteroides
- biological_processes:
- - preferred_term: virus-host interaction
- term:
- id: GO:0044003
- label: symbiont-mediated perturbation of host process
downstream:
- - target: Stable Infant Viral Colonization
- description: Maternal transfer of Bacteroides-infecting early phages is
- one of the determinants that lets a subset of infant gut phages colonize
- stably across early life.
- evidence:
- - reference: PMID:38096814
- supports: SUPPORT
- evidence_source: IN_VIVO
- snippet: early phage colonizers, which are mostly maternally transmitted and
- infect Bacteroides, persist for 3 years
- explanation: Supports the maternal-seeding and persistence dynamics.
-- name: Stop-Codon Reassignment Promotes Phage Persistence
- description: Phages with stop-codon reassignment are more likely to persist
- than non-recoded phages, and in-frame reassigned stop codons increase over
- 3 years.
- interaction_type: PREDATION
+ - target: Persistent Infant Phage Strains
+ description: PARTIAL - maternally shared phages may be adapted to the gut or repeatedly introduced, supporting
+ subsequent strain persistence. The longitudinal sharing association supports this model but does not isolate
+ maternal transmission, reseeding or infection direction experimentally.
+- name: Stop-Codon Reassignment and Phage Persistence Association
+ description: Phages with predicted stop-codon reassignment were more likely to persist. Of ten early recoded phages,
+ three persisted and were maternally shared; only one of these had an identified Bacteroides vulgatus host. Longitudinal
+ TAG changes differed among the three, including decreases, and do not show a universal increase. Proposed delayed
+ lysis or host adaptation was not selectively tested. The canonical maternal-phage entry denotes the represented
+ persister subset, not all viruses or all recoded phages.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: viral process
term:
id: GO:0016032
label: viral process
- downstream:
- - target: Stable Infant Viral Colonization
- description: Stop-codon reassignment marks phages that persist more often
- than non-recoded phages across the first 3 years of life.
evidence:
- reference: PMID:38096814
supports: SUPPORT
evidence_source: IN_VIVO
- snippet: phages with stop codon reassignment are more likely to persist than
- non-recoded phages
- explanation: Supports the link between stop-codon reassignment and persistence.
+ snippet: phages with stop codon reassignment are more likely to persist than non-recoded phages
+ explanation: Supports the observed recoding-persistence association; sequence-based recoding inference does
+ not establish its selective causal effect.
- reference: PMID:38096814
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VIVO
snippet: an increase in in-frame reassigned stop codons over 3 years
- explanation: Supports the longitudinal increase of in-frame reassigned stop
- codons.
+ explanation: The abstract summarizes an increase, but the inspected primary Results describe heterogeneous TAG
+ trajectories among the three persisters, not an increase in every lineage.
+ participating_taxa:
+ - preferred_term: maternally transmitted DNA bacteriophages
+ term:
+ id: NCBITaxon:10239
+ label: Viruses
+ downstream:
+ - target: Persistent Infant Phage Strains
+ description: PARTIAL - stop-codon reassignment could alter phage expression or lysis timing and thereby support
+ persistence. Enrichment among persisters and heterogeneous sequence trajectories support the proposed mechanism,
+ not a recoding perturbation demonstrating its necessity or sufficiency.
- name: Increasing Phageome Richness Toward Adulthood
- description: Phageome richness increases during the first 3 years and reaches
- adult-like complexity by age 3.
- interaction_type: COLONIZATION_FACILITATION
+ description: The cohort phageome becomes richer and reaches adult-like community complexity by age three. This
+ positive community-level diversity observation is different from nucleotide diversity within an individual persistent
+ phage population. It does not show that increasing richness causes a particular early phage strain to persist.
+ The canonical maternal-phage entry is a represented subset, not the complete richness-assay roster.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: viral process
term:
id: GO:0016032
label: viral process
- downstream:
- - target: Stable Infant Viral Colonization
- description: Increasing early-life phageome richness supplies the diverse
- phage populations associated with stable infant gut viral colonization.
evidence:
- reference: PMID:38096814
supports: SUPPORT
evidence_source: IN_VIVO
- snippet: early-life phageome richness increases over time and reaches
- adult-like complexity by age 3
- explanation: Supports the developmental trajectory of the infant phageome.
-- name: Stable Infant Viral Colonization
- description: Maternal seeding, stop-codon reassignment, host CRISPR-Cas locus
- prevalence, and diverse phage populations jointly explain stable viral
- colonization in the infant gut during the first 3 years of life.
- interaction_type: COLONIZATION_FACILITATION
+ snippet: early-life phageome richness increases over time and reaches adult-like complexity by age 3
+ explanation: Supports the positive community richness trajectory, not a richness-to-strain-persistence mechanism.
+ participating_taxa:
+ - preferred_term: maternally transmitted DNA bacteriophages
+ term:
+ id: NCBITaxon:10239
+ label: Viruses
+- name: Persistent Infant Phage Strains
+ description: In the longitudinal cohort, 155 of 1801 early phages met the persistence criterion among 40 infants
+ with adequate follow-up; persistence was more frequent in full-term infants. Strain comparisons used 99 percent
+ population ANI over at least 75 percent of compared genome sequence, distinct from the bacterial study threshold.
+ Maternal sharing, recoding, predicted hosts and host CRISPR-Cas profiles inform proposed persistence mechanisms,
+ not a jointly isolated causal model. The Bacteroides/maternal canonical participants are a supported subset,
+ not all cohort hosts or phages. Co-detection and coverage correlations do not prove continuous infection of
+ one unchanged host lineage.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: viral process
@@ -162,11 +170,19 @@ ecological_interactions:
- reference: PMID:38096814
supports: SUPPORT
evidence_source: IN_VIVO
- snippet: maternal seeding, stop codon reassignment, host CRISPR-Cas locus
- prevalence, and diverse phage populations contribute to stable viral
- colonization
- explanation: Supports stable infant gut viral colonization as the combined
- downstream outcome.
+ snippet: 9% of early phage colonizers, which are mostly maternally transmitted and infect Bacteroides, persist
+ for 3 years
+ explanation: Supports observed persisters; the primary body supplies the eligible-follow-up denominator and
+ strain definition, not a universal infection mechanism.
+ participating_taxa:
+ - preferred_term: maternally transmitted DNA bacteriophages
+ term:
+ id: NCBITaxon:10239
+ label: Viruses
+ - preferred_term: infant Bacteroides hosts
+ term:
+ id: NCBITaxon:816
+ label: Bacteroides
environmental_factors:
- name: Birth status
value: full-term versus preterm infants
@@ -217,3 +233,28 @@ rare_earth_elements_present: []
metal_relevance: NOT_APPLICABLE
metal_notes: No metal or rare earth element processing role is curated for this
infant gut phageome community.
+discussions:
+- discussion_id: infant_phage_persistence_mechanisms
+ prompt: Which proposed mechanisms causally maintain the observed infant phage strains?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Maternal Phage Sharing and Persistence Association
+ - ecological_interactions#Stop-Codon Reassignment and Phage Persistence Association
+ - ecological_interactions#Increasing Phageome Richness Toward Adulthood
+ - ecological_interactions#Persistent Infant Phage Strains
+ rationale: 'Keep the maternal-sharing and recoding routes as partial models, not experimentally isolated determinants.
+ Remove the richness arrow: community alpha diversity is not within-phage nucleotide diversity. Maternal bidirectional
+ reseeding, host assignment, CRISPR-associated strain replacement and predicted temperate/lytic lifestyles remain
+ distinct hypotheses or observations. Recoding trajectories are heterogeneous. Full primary main text, STAR Methods,
+ four figure captions and two main tables read; no figure pixels, external supplements, raw data or code audited.
+ Canonical taxonomy and non-graph fields are preserved, not recertified.'
+ posed_by: codex
+ posed_date: '2026-10-06'
+curation_history:
+- timestamp: '2026-10-06T17:18:48Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Bound phage persistence to strain-resolved associations and partial maternal/recoding mechanisms. Issue
+ #1511; reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml b/kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml
index d77d99383..5f9d59128 100644
--- a/kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml
+++ b/kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml
@@ -131,79 +131,151 @@ taxonomy:
explanation: Identifies Escherichia coli as a member whose metabolic activity is modulated within
the SynCom.
ecological_interactions:
-- name: Substrate-dependent cross-feeding network
- description: Mechanistic dissection using the defined SynCom revealed extensive cross-feeding networks
- and substrate-dependent interaction rewiring among community members in response to HMO, GOS, and 2'FL.
- interaction_type: CROSS_FEEDING
+- name: Substrate-Dependent Infant Community Interaction Responses
+ description: 'The primary preprint compares donor-derived infant fermentations with a separate six-species SynCom
+ containing B. breve, B. infantis, P. vulgatus, E. coli, L. gasseri and R. gnavus. Substrate perturbations and
+ semipermeable binary cultures show growth responses and substrate-dependent interactions, including relief of
+ P. vulgatus inhibition with 2FL. Donor communities instead contain P. dorei and L. rhamnosus in the corresponding
+ comparisons; abundance correlations there are not the same intervention. The four canonical entries are a cross-experiment
+ subset, not a four-member assayed SynCom or a complete roster. Exact strains and missing members remain unresolved
+ under #1514.'
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: Phocaeicola vulgatus hub modulates Escherichia coli metabolism
- description: Substrate-dependent SynCom rewiring identifies P. vulgatus as
- the hub that reshapes succinate and propionate production and E. coli
- metabolic activity.
- - target: Lactate-mediated species-specific inhibition
- description: Substrate-driven cross-feeding produces fermentation products
- whose chemical identity, including lactate, determines species-specific
- competitive inhibition.
evidence:
- reference: doi:10.64898/2026.05.29.728681
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: Mechanistic dissection using SynCom revealed extensive cross-feeding networks and
- substrate-dependent interaction rewiring
- explanation: Community-level cross-feeding network that rewires depending on the prebiotic substrate.
-- name: Phocaeicola vulgatus hub modulates Escherichia coli metabolism
- description: Phocaeicola vulgatus acts as a context-dependent ecological hub that disproportionately
- shapes succinate and propionate production and alters Escherichia coli metabolic activity without
- changing its abundance.
- interaction_type: CROSS_FEEDING
- scope: PAIRWISE
- source_taxon:
- preferred_term: Phocaeicola vulgatus
+ snippet: Mechanistic dissection using SynCom revealed extensive cross-feeding networks and substrate-dependent
+ interaction rewiring
+ explanation: Supports positive substrate-dependent interaction responses; the inspected main text distinguishes
+ defined-culture perturbations from donor-community comparisons.
+ participating_taxa:
+ - preferred_term: Bifidobacterium spp.
+ term:
+ id: NCBITaxon:1678
+ label: Bifidobacterium
+ - preferred_term: Bacteroides/Phocaeicola spp.
+ term:
+ id: NCBITaxon:816
+ label: Bacteroides
+ - preferred_term: Phocaeicola vulgatus
term:
id: NCBITaxon:821
label: Phocaeicola vulgatus
- target_taxon:
- preferred_term: Escherichia coli
+ - preferred_term: Escherichia coli
term:
id: NCBITaxon:562
label: Escherichia coli
+ downstream:
+ - target: Species-Specific Lactate and Acetate Inhibition
+ description: PARTIAL - substrate-dependent fermentation can supply lactate whose accumulation may suppress susceptible
+ members. Community metabolite profiles, binary growth responses and separate acid challenges support this
+ route, but selective lactate depletion/rescue was not demonstrated in the inspected complete-community experiments;
+ pH and other products can also contribute.
+- name: Phocaeicola Omission Alters Community Metabolism and Ecoli Activity
+ description: Omitting P. vulgatus from the defined community changes succinate/propionate output and E. coli metabolic
+ activity. Heavy-water Raman-FISH measurements under GOS found higher E. coli activity with P. vulgatus present,
+ without an abundance change in that assay. This is positive community-context intervention evidence, not proof
+ of direct two-member succinate or propionate transfer to E. coli. Growth in P. vulgatus-conditioned supernatants
+ did not differ between GOS and glucose, leaving timing and other partners relevant. The listed taxa identify
+ the omitted member and measured responder, not the whole tested community or universal abundance invariance.
+ scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: succinate
term:
id: CHEBI:26806
label: succinate
+ notes: Measured community output associated with P. vulgatus omission; not a demonstrated molecule transferred
+ directly to E. coli.
- preferred_term: propionate
term:
id: CHEBI:17272
label: propionate
+ notes: Measured community output associated with P. vulgatus omission; not a demonstrated molecule transferred
+ directly to E. coli.
evidence:
- reference: doi:10.64898/2026.05.29.728681
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: disproportionately shaped succinate and propionate production and altered Escherichia coli
- metabolic activity without affecting its abundance
- explanation: P. vulgatus hub shapes succinate/propionate and modulates E. coli metabolism.
-- name: Lactate-mediated species-specific inhibition
- description: Competitive outcomes were determined not only by environmental acidification but by the
- chemical identity of fermentation products, with lactate exerting species-specific inhibitory effects
- independent of bulk pH changes.
- interaction_type: COMPETITION
+ snippet: disproportionately shaped succinate and propionate production and altered Escherichia coli metabolic
+ activity without affecting its abundance
+ explanation: Supports the positive community-context output/activity effects, not direct pairwise transfer or
+ an unchanged abundance under every condition.
+ - reference: doi:10.64898/2026.05.29.728681
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: significantly higher activity when P. vulgatus was present
+ explanation: 'Primary Results, Figure 3I context: E. coli activity under GOS is higher with the member present,
+ not absent.'
+ participating_taxa:
+ - preferred_term: Phocaeicola vulgatus
+ term:
+ id: NCBITaxon:821
+ label: Phocaeicola vulgatus
+ - preferred_term: Escherichia coli
+ term:
+ id: NCBITaxon:562
+ label: Escherichia coli
+- name: Species-Specific Lactate and Acetate Inhibition
+ description: 'The preprint reports stronger inhibition of P. vulgatus and R. gnavus by lactate than acetate at
+ comparable concentrations, with E. coli less affected. P. vulgatus was also inhibited at pH 5, and the authors
+ discuss additive effects of pH and acid identity. Preserve these positive challenge results without claiming
+ a universally pH-independent mechanism or an inspected pH-clamped protocol: the exact acid-challenge protocol
+ is not in the main Methods and the external supplement was not obtained. The canonical P. vulgatus and E. coli
+ entries are the represented comparison subset; R. gnavus remains missing under #1514.'
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: lactate
term:
id: CHEBI:24996
label: lactate
+ notes: Assayed inhibitory fermentation product; selective removal/rescue in the complete community was not established
+ by the inspected main text.
evidence:
- reference: doi:10.64898/2026.05.29.728681
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: with lactate exerting species-specific inhibitory effects independent of bulk pH changes
- explanation: Fermentation-product (lactate) driven, species-specific competitive inhibition beyond pH.
+ snippet: stronger by lactate than acetate at comparable concentrations
+ explanation: Primary Results retain the acid-identity challenge effect and species dependence, not an independently
+ verified pH-clamped mechanism.
+ participating_taxa:
+ - preferred_term: Phocaeicola vulgatus
+ term:
+ id: NCBITaxon:821
+ label: Phocaeicola vulgatus
+ - preferred_term: Escherichia coli
+ term:
+ id: NCBITaxon:562
+ label: Escherichia coli
growth_media: []
+discussions:
+- discussion_id: infant_syncom_members_and_mediation
+ prompt: Which exact members and metabolites mediate the substrate-dependent responses?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Substrate-Dependent Infant Community Interaction Responses
+ - ecological_interactions#Phocaeicola Omission Alters Community Metabolism and Ecoli Activity
+ - ecological_interactions#Species-Specific Lactate and Acetate Inhibition
+ rationale: 'Remove the network-overview-to-hub arrow, which describes identification of a component rather than
+ a causal mechanism. Preserve the positive P. vulgatus omission result, with higher E. coli activity when present
+ under GOS, and the separate acid challenge. Retain fermentation-to-inhibition only as PARTIAL. #1514 tracks
+ the exact six-member roster, R. gnavus-dependent 2FL availability and missing ex-vivo mouse-colon outcome representation.
+ Full/P. vulgatus-omitted supernatants both suppress motility; matched SCFAs do not reproduce it and PEA was
+ below detection in SynCom. These do not prove infant in-vivo physiology or endogenous PEA mediation. Full version-1
+ primary main text, Methods and embedded figure captions read; external supplement, exact strain sheet, raw data,
+ code and figure pixels not inspected. One-community Edison dry run only; no paid report or new graph structure.
+ Non-graph pH/roster claims remain outside this repair.'
+ posed_by: codex
+ posed_date: '2026-10-06'
+curation_history:
+- timestamp: '2026-10-06T17:18:48Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Preserve SynCom omission and acid-challenge results without direct-transfer or universal pH claims.
+ Issue #1512; reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml b/kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml
index 4a7e5ab6e..490fecfed 100644
--- a/kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml
+++ b/kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml
@@ -106,66 +106,68 @@ taxonomy:
the infant gut than other strains
explanation: Supports maternal-origin strains as a privileged class.
ecological_interactions:
-- name: Maternal Strain Seeding Drives Persistence
- description: Maternal gut strains are significantly more likely to persist
- in the infant gut than other strains, indicating maternal seeding as a
- driver of long-term colonization.
- interaction_type: COLONIZATION_FACILITATION
+- name: Maternal Strain Sharing and Persistence Association
+ description: Among 17 mother-infant pairs, maternal strain sharing was associated with subsequent infant persistence.
+ Maternal transmission was particularly enriched among Bacteroides, whereas persistent Bifidobacterium strains
+ often lacked a maternal match. Sharing supports maternal-origin association, not a selectively established dominant
+ driver or repeated reseeding mechanism. The canonical Bacteria entry represents the sampled maternal-origin
+ strain class, not a property of all bacteria.
scope: COMMUNITY_LEVEL
- biological_processes:
- - preferred_term: biological process involved in interspecies interaction between organisms
- term:
- id: GO:0044419
- label: biological process involved in interspecies interaction between organisms
- downstream:
- - target: Bacteroides and Bifidobacterium First-Year Persistence
- description: Vertically transmitted maternal gut strains were significantly
- more likely to become infant persisters, and persistent early colonizers
- were concentrated in Bacteroides and Bifidobacterium.
evidence:
- reference: PMID:34622230
supports: SUPPORT
evidence_source: IN_VIVO
- snippet: maternal gut strains are significantly more likely to persist in
- the infant gut than other strains
- explanation: Supports maternal seeding as the dominant persistence driver.
-- name: Persistence Traits Encoded in Genomes
- description: Enrichment in genes for surface adhesion, iron acquisition, and
- carbohydrate degradation may explain persistence of some strains through
- the first year.
- interaction_type: COMMENSALISM
+ snippet: maternal gut strains are significantly more likely to persist in the infant gut than other strains
+ explanation: Supports the positive maternal-sharing association, not a dominant isolated causal driver applying
+ equally to every persister genus.
+ participating_taxa:
+ - preferred_term: maternal-origin gut bacterial strains
+ term:
+ id: NCBITaxon:2
+ label: Bacteria
+ downstream:
+ - target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: PARTIAL - maternal gut adaptation or repeated introduction could support infant retention of shared
+ strains, particularly the Bacteroides-enriched maternal subset. The observational association does not isolate
+ either mechanism or explain all Bifidobacterium persisters.
+- name: Bifidobacterium Persister Carbohydrate-Gene Enrichment
+ description: 'Within-genus comparison of 12 Bifidobacterium persisters and 18 non-persisters found higher CAZyme
+ diversity and coding density in persister genomes. This is positive genomic association, not measured expression,
+ enzyme activity or demonstrated commensalism. The separate E. coli comparison used three persisters and 25 non-persisters;
+ its iron-acquisition and adhesion findings cannot be assigned to the canonical Bacteroides or Bifidobacterium
+ entries. Exact E. coli representation and broader trait structure remain unresolved under #1515.'
scope: COMMUNITY_LEVEL
biological_processes:
- - preferred_term: iron ion transport
- term:
- id: GO:0006826
- label: iron ion transport
- preferred_term: carbohydrate metabolic process
term:
id: GO:0005975
label: carbohydrate metabolic process
- - preferred_term: cell adhesion
- term:
- id: GO:0007155
- label: cell adhesion
- downstream:
- - target: Bacteroides and Bifidobacterium First-Year Persistence
- description: Genes for surface adhesion, iron acquisition, and carbohydrate
- degradation were enriched in persistent strains, providing functional
- traits that may explain their first-year retention.
+ notes: Genomic carbohydrate-associated potential, not measured catalytic activity or expression.
evidence:
- reference: PMID:34622230
supports: SUPPORT
- evidence_source: IN_VIVO
- snippet: Enrichment in genes for surface adhesion, iron acquisition, and
- carbohydrate degradation may explain persistence
- explanation: Supports the three genomic trait categories curated as
- persistence determinants.
+ evidence_source: COMPUTATIONAL
+ snippet: Bifidobacterium persisters dedicated a significantly higher percentage of their genomes to CAZymes
+ explanation: Primary Results support Bifidobacterium CAZyme coding-density association, not transfer of E. coli
+ iron/adhesion annotations or a causal enzyme perturbation.
+ participating_taxa:
+ - preferred_term: persistent infant Bifidobacterium colonizers
+ term:
+ id: NCBITaxon:1678
+ label: Bifidobacterium
+ downstream:
+ - target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: PARTIAL - a broader encoded carbohydrate repertoire could support substrate use and persistence
+ of Bifidobacterium strains within the downstream persister group. Within-genus enrichment supports this hypothesis,
+ not measured enzyme flux or necessity, and does not assign E. coli iron/adhesion traits to Bacteroides or
+ Bifidobacterium.
- name: Bacteroides and Bifidobacterium First-Year Persistence
- description: Bacteroides and Bifidobacterium were the main genera among the
- approximately 11 percent of early colonizer strains that persisted through
- the first year of life.
- interaction_type: COLONIZATION_FACILITATION
+ description: Bacteroides and Bifidobacterium were prominent among 59 of 560 early colonizer strains that persisted
+ into late first-year sampling. The approximately 11 percent denominator is all eligible early strains, not each
+ genus separately. Early detection was within the first two months; persistence required detection at month eight
+ or later, accommodating missing or inadequate month-twelve samples. Strain matching used 99.999 percent population
+ ANI over at least half the compared genome. This is observed persistence, not evidence that every member expressed
+ adhesion or iron-acquisition traits.
scope: COMMUNITY_LEVEL
participating_taxa:
- preferred_term: persistent infant Bacteroides colonizers
@@ -176,30 +178,21 @@ ecological_interactions:
term:
id: NCBITaxon:1678
label: Bifidobacterium
- biological_processes:
- - preferred_term: carbohydrate metabolic process
- term:
- id: GO:0005975
- label: carbohydrate metabolic process
- - preferred_term: cell adhesion
- term:
- id: GO:0007155
- label: cell adhesion
evidence:
- reference: PMID:34622230
supports: SUPPORT
evidence_source: IN_VIVO
- snippet: Approximately 11% of early colonizers, primarily Bacteroides and
- Bifidobacterium, persist during the first year of life
- explanation: Supports the first-year persister node and the major persistent
- genera.
+ snippet: Approximately 11% of early colonizers, primarily Bacteroides and Bifidobacterium, persist during the
+ first year of life
+ explanation: Supports the observed persister distribution; the primary Methods bound eligibility and strain
+ identity, not a universal genus-specific trait mechanism.
- reference: PMID:34622230
supports: SUPPORT
evidence_source: IN_VIVO
- snippet: When considering all infants, Bacteroides and Bifidobacterium strains
- were more likely to persist than were strains of other bacterial genera
- explanation: Supports Bacteroides and Bifidobacterium as the genera most
- associated with first-year persistence.
+ snippet: When considering all infants, Bacteroides and Bifidobacterium strains were more likely to persist than
+ were strains of other bacterial genera
+ explanation: Supports the observed persister distribution; the primary Methods bound eligibility and strain
+ identity, not a universal genus-specific trait mechanism.
environmental_factors:
- name: Birth status
value: full-term (n=13) vs preterm (n=9) infants
@@ -248,3 +241,29 @@ rare_earth_elements_present: []
metal_relevance: SIGNIFICANT
metal_notes: Iron acquisition genes are among the three trait categories
associated with strain persistence in the infant gut.
+discussions:
+- discussion_id: infant_bacterial_taxon_specific_persistence
+ prompt: Which taxon-specific traits causally contribute to strain persistence?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Maternal Strain Sharing and Persistence Association
+ - ecological_interactions#Bifidobacterium Persister Carbohydrate-Gene Enrichment
+ - ecological_interactions#Bacteroides and Bifidobacterium First-Year Persistence
+ rationale: 'The maternal-sharing and Bifidobacterium CAZyme routes remain partial models. E. coli iron-acquisition,
+ adhesion and toxin annotations are positive genetic-potential results from three persisters versus 25 non-persisters,
+ not expression, flux or knockout evidence. All three E. coli persisters came from preterm infants in a disease-enriched
+ sample. #1515 tracks missing exact E. coli representation and valid trait structure; do not transfer those results
+ to other taxa or erase them as negative evidence. Prematurity, early antibiotics, hospitalization and feeding
+ covary, so the birth-status comparison is not an isolated cause. Full cached primary main text, Methods, Table
+ 1 and figure captions read, but not external supplementary files, raw data, code or original images. One-community
+ Edison dry run only; no paid report or new graph structure. Canonical taxonomy and non-graph fields are preserved,
+ not recertified.'
+ posed_by: codex
+ posed_date: '2026-10-06'
+curation_history:
+- timestamp: '2026-10-06T17:18:49Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Correct persistence trait ownership and preserve taxon-specific genomic associations. Issue #1513; reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml'
+ llm_assisted: true
diff --git a/references_cache/doi_10.64898_2026.05.29.728681.md b/references_cache/doi_10.64898_2026.05.29.728681.md
index 9a8a1622b..7dd97501a 100644
--- a/references_cache/doi_10.64898_2026.05.29.728681.md
+++ b/references_cache/doi_10.64898_2026.05.29.728681.md
@@ -28,4 +28,22 @@ Abstract
Escherichia coli
metabolic activity without affecting its abundance. Competitive outcomes were determined not only by environmental acidification, but also by the chemical identity of fermentation products, with lactate exerting species-specific inhibitory effects independent of bulk pH changes. Using an in-house
ex vivo
- IntestiFlow gut organ platform, we further show that metabolites produced by the defined community induced a strong but reversible suppression of colonic peristaltic activity, an effect not recapitulated by SCFAs alone. Biogenic amine metabolites, including phenethylamine, partially reproduced key aspects of this response, suggesting a role for specific microbial fermentation products in modulating intestinal motility. Together, these findings demonstrate that early-life prebiotic responses extend beyond uniform bifidogenic expansion and instead emerge from interaction-driven metabolic specialization within feeding-mode-specific community contexts, with direct functional consequences for infant intestinal physiology.
\ No newline at end of file
+ IntestiFlow gut organ platform, we further show that metabolites produced by the defined community induced a strong but reversible suppression of colonic peristaltic activity, an effect not recapitulated by SCFAs alone. Biogenic amine metabolites, including phenethylamine, partially reproduced key aspects of this response, suggesting a role for specific microbial fermentation products in modulating intestinal motility. Together, these findings demonstrate that early-life prebiotic responses extend beyond uniform bifidogenic expansion and instead emerge from interaction-driven metabolic specialization within feeding-mode-specific community contexts, with direct functional consequences for infant intestinal physiology.
+
+## Primary-Source Excerpts (2026-10-06)
+
+Source: https://www.biorxiv.org/content/early/2026/05/29/2026.05.29.728681.source.xml
+
+Primary preprint: https://doi.org/10.64898/2026.05.29.728681, version 1 (2026-05-29); bibliographic attribution above. All rights reserved.
+
+Retrieved 2026-10-06; XML SHA-256: 17fc38307a05f10ddd0589cbdeda743b4b0a90bc8e5160de3681a63becc6e7aa.
+
+Two brief Results excerpts verified against primary XML, not a complete full-text cache. Context labels are curator descriptions. Original abstract remains unchanged. External supplements and figure images were not inspected.
+
+Context: E. coli activity under GOS
+
+> significantly higher activity when P. vulgatus was present
+
+Context: Species-dependent acid challenge
+
+> stronger by lactate than acetate at comparable concentrations
diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md
index c20317b2e..35a12c9ad 100644
--- a/reports/causal_graph_review/README.md
+++ b/reports/causal_graph_review/README.md
@@ -5,6 +5,26 @@ 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`.
+## Batch54: Infant Gut Persistence And Prebiotic Responses
+
+[Decisions](decisions/20261006-infant-gut-batch54.yaml),
+[validation](validation-20261006-batch54.json) and
+[self-adversarial review](adversarial-review-20261006-batch54.yaml) retain all
+ten nodes, remove two unsupported arrows and qualify five proposed mechanisms.
+Maternal sharing, phage recoding and bacterial gene-content associations remain
+distinct from selective causal perturbations. The SynCom omission and acid-challenge
+results remain positive findings, with higher E. coli activity when P. vulgatus is
+present under GOS, not a proved direct metabolite transfer.
+
+Primary main texts, Methods and main captions/tables were read for all three
+studies. External supplements, original images, raw data and code were not audited;
+the prebiotic study is a version-1 preprint. Two short excerpts (16 source words)
+extend one abstract cache with verified XML provenance and an unchanged original
+prefix. Exact SynCom membership/new structure and E. coli-specific persistence
+traits remain unresolved under #1514 and #1515. Two Edison dry runs completed,
+without provider submission or credit spend. Non-graph fields are preserved,
+not recertified; validation links describe separately recorded publication gates.
+
## Batch53: Pit Lakes, Bioleaching And Model Biofilm
[Decisions](decisions/20261006-pitlakes-bioleach-biofilm-batch53.yaml),
diff --git a/reports/causal_graph_review/adversarial-review-20261006-batch54.yaml b/reports/causal_graph_review/adversarial-review-20261006-batch54.yaml
new file mode 100644
index 000000000..3077b1727
--- /dev/null
+++ b/reports/causal_graph_review/adversarial-review-20261006-batch54.yaml
@@ -0,0 +1,189 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 37f2bdb83ad6175bbbf9bb12df3bf776fa331771
+scope:
+- kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml
+- kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml
+- kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml
+decision_ledger: reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
+validation_report: reports/causal_graph_review/validation-20261006-batch54.json
+findings:
+- issue: 1511
+ severity: P2
+ status: addressed_in_this_change
+ finding: Bound phage persistence to strain-resolved associations and partial maternal/recoding mechanisms.
+ disposition: Close only after protected main merge.
+- issue: 1512
+ severity: P2
+ status: addressed_in_this_change
+ finding: Preserve SynCom omission and acid-challenge results without direct-transfer or universal pH
+ claims.
+ disposition: Close only after protected main merge.
+- issue: 1513
+ severity: P2
+ status: addressed_in_this_change
+ finding: Correct persistence trait ownership and preserve taxon-specific genomic associations.
+ disposition: Close only after protected main merge.
+- issue: 1514
+ severity: P2
+ status: unresolved_research
+ finding: Exact SynCom roster, R. gnavus-dependent substrate availability and missing ex-vivo outcome
+ structure.
+ disposition: Keep open; exact-system curation and single-community source-checked research remain pending.
+- issue: 1515
+ severity: P2
+ status: unresolved_research
+ finding: Exact E. coli representation and taxon-specific persistence-trait structure.
+ disposition: Keep open; exact-system curation and single-community source-checked research remain pending.
+adversarial_checks:
+- Whole219-line phage,209-line prebiotic and250-line maternal bacterial records read, including all10
+ original nodes and7 arrows. Complete primary main texts/Methods and main captions/tables read for all3
+ sources. No original figure pixels, external supplements, raw data or code audited. The prebiotic paper
+ is version1 of a preprint, not peer reviewed.
+- Phage155/1801 persistence denominator refers to40 eligible infants, not every maternally shared or Bacteroides-associated
+ phage. Maternal/Bacteroides canonical entries represent a subset. Predicted host/lifestyle and sharing
+ are not universal lytic predation or an isolated maternal-transfer experiment.
+- Recoding persistence association remains positive. Three early recoded persisters have heterogeneous
+ TAG trajectories including decreases; no universal increase or selectively demonstrated delayed-lysis
+ effect. Community richness differs from within-phage nucleotide diversity; richness-to-persistence arrow
+ removed.
+- Phage population ANI99 percent/75 percent compared sequence is distinct from bacterial99.999 percent/50
+ percent. Coverage and CRISPR correlations do not prove continuous infection of an unchanged host lineage.
+ Both retained phage arrows are PARTIAL with actual proposed mechanisms.
+- SynCom has six species and differs from donor-derived communities containing P. dorei/L. rhamnosus.
+ Four canonical entries are an explicitly cross-experiment subset, not an exact four-member experiment.
+ Roster/strain identifiers and missing R. gnavus structure remain1514; no guessed CURIE or invented member
+ added.
+- Positive omission/Raman-FISH result is higher E. coli metabolic activity with P. vulgatus PRESENT underGOS;
+ direction verified against primary Results and a short exact excerpt. An interim continuation summary
+ inverted this direction, caught before any record edit. Source notes, issues and final records have
+ the correct direction. Abundance invariance belongs to this assay, not every substrate experiment.
+- Succinate/propionate output is not demonstrated direct transfer to E. coli. Conditioned supernatants
+ did not reproduce the GOS/glucose growth difference. Retain community intervention evidence with SUPPORT;
+ remove the overview-to-component arrow, not the controlled result.
+- Lactate-versus-acetate challenge supports species-dependent inhibition, while the main text discusses
+ additive pH/acid effects. Exact challenge protocol is absent from inspected main Methods; no claim that
+ an uninspected supplement lacks it, and no invented pH-clamped control. Fermentation-to-inhibition remains
+ PARTIAL pending selective depletion/rescue.
+- Bifidobacterium12 persisters/18 non-persisters CAZyme genomic association retained as positive computational
+ evidence. E. coli3/25 iron, adhesion and toxin annotations are not transferred to Bacteroides/Bifidobacterium.
+ Missing E. coli representation remains1515, with positive findings explicitly retained in discussion.
+- Bacterial59/560 denominator and month8-or-later endpoint are explicit; maternal-sharing association
+ is not a dominant cause applying uniformly to Bifidobacterium. Clinical/prematurity/antibiotic/feeding
+ confounding remains explicit. Non-graph descriptions and taxonomy are preserved, not certified.
+- 'Future ex-vivo motility structure must preserve negative controls: full and P. vulgatus-omitted supernatants
+ both suppress mouse-colon motility, matching SCFAs do not reproduce it, and endogenous PEA was below
+ detection. No infant in-vivo physiology or established endogenous PEA mediator is asserted.'
+- Full record diffs, all8 focused tests, participant-registry and cache diff inspected.10 nodes retained;2
+ arrows removed;5 PARTIAL arrows remain. Only graph/discussion/curation-history record fields change;457
+ other records and raw non-graph blocks unchanged.919 caches unchanged; one exact-prefix appendix adds16
+ XML-verified source words with attribution and digest.
+- Actual focused schema/strict/term/reference/snippet/history/rank gates passed. All34 baseline network
+ findings preserved with zero structural errors. Repeat render deterministic and exact descriptions parser-checked
+ over456 pages, not browser screenshots. Two source-backed pairwise-to-community corrections yield measured
+ mixed125, community-only264 and1226 solely community-credited taxa; no production matching or census-bound
+ change.
+- Dedup searched817 all-state issue titles/bodies and43 ignored/hidden local files; relevant contexts
+ inspected, not every historical comment/review.1511-1513 addressed but open until protected main merge;1514-1515
+ unresolved. Two separate Edison dry runs only, no provider call or spend. Self-adversarial review is
+ not independent approval.
+verification:
+ combined_regressions: 511 passed in 220.50s (0:03:40)
+ new_regression_tests: 8
+ schema_strict_terms_history: Passed with actual output digests
+ references: CLI Total checks counts reported issues, not executed checks. Exit0 means no issues reported,
+ not independent source verification. SupportingReference coverage476, Linux DOI-cache lookup1091 and
+ selected-cache provenance1362 remain limitations.
+ snippet_counts_by_record:
+ kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml:
+ MATCH: 10
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml:
+ MATCH: 8
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml:
+ MATCH: 10
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ network:
+ existing_findings_preserved: 34
+ added_findings: {}
+ removed_findings: {}
+ black_ruff_diff: passed
+ tested_file_sha256:
+ reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml: ff5d4ea5cd65b708761ae8dca47873caf593ddd66dadd4567be44931d281e51c
+ tests/test_causal_review_batch54.py: 8fe624722e974387759985362d4f773cd11147b80e8402f10647b536eb322252
+ tests/test_participating_taxa.py: 2900495de54dd0b4ac414280553709bdc375aba14233f9af43a8492af517d7b2
+ kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml: 21f96693bd3c7fd376824ef7fff9897a3d8fbf3843395bb32abd9965c0b50bcf
+ kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml: 65a7283c698b0a9f7b3644df944199c1f9349c5675c58b84e2d76f746a6a43ac
+ kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml: 628d4ae9504b000f14951fa6179843051f2fad9f0a56b8f5ee89aae6a48e5e00
+ reports/causal_graph_review/README.md: d06ac7e34b980a5f2372afd3af393c534ecf61cbd7f4bd637db560b4c0b905ea
+ post_commit_docs_current: Separate publication gate; not asserted before commit.
+participant_census:
+ measurements:
+ baseline:
+ records: 460
+ with_community_level: 389
+ mixed: 127
+ community_level_only: 262
+ taxa: 1498
+ credited_solely_by_the_rule: 1222
+ current:
+ records: 460
+ with_community_level: 389
+ mixed: 125
+ community_level_only: 264
+ taxa: 1498
+ credited_solely_by_the_rule: 1226
+ interpretation: Two unsupported pairwise categories become explicitly scoped community observations;
+ mixed records decrease by2 and solely community-credited taxa increase by4. All ten nodes use canonical
+ participants; two registry entries added. No production matching or census-bound changes.
+corpus:
+ records: 460
+ nodes: 1465
+ edges: 664
+ review_status_counts:
+ needs_research: 18
+ pending: 258
+ reviewed: 184
+limitations:
+- Whole three records, all ten original nodes and seven arrows reviewed; ten nodes remain, two arrows
+ removed and five partial mechanisms retained. No new graph structure.
+- Full primary main texts and Methods read for all three studies, plus main embedded captions/tables.
+ Phage captions/tables extracted separately and fully read. No original figure pixels, external supplements,
+ raw data or code audited. Preprint version1 is not a peer-reviewed publication.
+- Phage persistence and maternal bacterial sharing are observational. Host/lifestyle assignments, recoding
+ and CAZymes include sequence-based inference. Community richness is not within-phage diversity; phage
+ and bacterial strain thresholds differ.
+- Positive E. coli activity under GOS is higher with P. vulgatus present. Omission affects a community;
+ conditioned supernatants did not reproduce the GOS/glucose difference. Acid challenges support species
+ dependence without a main-text pH-clamped protocol. Donor taxa differ from SynCom members.
+- Bifidobacterium carbohydrate-genome association is preserved. E. coli iron/adhesion findings are not
+ erased, but remain in discussion and unresolved1515 because the canonical roster lacks that organism.
+ Three E. coli persisters came from preterm disease-enriched sampling.
+- Prebiotic roster, R. gnavus availability and ex-vivo motility representation remain unresolved1514;
+ maternal E. coli representation remains unresolved1515. Canonical taxonomy and all non-graph raw blocks
+ preserved, not recertified.
+- Two separate one-community Edison dry runs completed. No paid provider request/report, no credit spend
+ and no new node/arrow; full-prompt review and specific payload/spend authorization remain prerequisites
+ to submission.
+- One preprint cache gains16 exact primary-verified words with XML digest and attribution, original exact
+ prefix preserved.919 other caches unchanged. This is not certification of all historical cache provenance.
+ Full primary texts remain outside the repository.
+- Dedup searched817 all-state issue titles/bodies and43 ignored/hidden local matches; relevant contexts
+ read, not every historical comment or review.1511-1513 stay open until protected-main merge,1514-1515
+ unresolved. Self-adversarial review is not independent approval.
+- SupportingReference coverage476, Linux DOI-cache lookup1091, selected-cache provenance1362 and writer
+ artifact1095 remain limitations; reference CLI Total checks counts reported issues, not executed checks.
diff --git a/reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml b/reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
new file mode 100644
index 000000000..8dede7907
--- /dev/null
+++ b/reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
@@ -0,0 +1,324 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 37f2bdb83ad6175bbbf9bb12df3bf776fa331771
+baseline_commit: 37f2bdb83ad6175bbbf9bb12df3bf776fa331771
+base_tree: ad48a72795d78b1b2136001656075aec0ef9c0e9
+pre_source_baseline_sha256: 5ab0ca7e8ca1bd266b34c274a034d4d62a2b8a49db74c48caba9c69a21a11416
+issues:
+- 1511
+- 1512
+- 1513
+unresolved_research_issues:
+- 1514
+- 1515
+issue_deduplication:
+ all_state_issue_titles_and_bodies: 817
+ ignored_hidden_local_search: true
+ matching_issues:
+ - 1498
+ - 1428
+ - 1425
+ - 1348
+ - 1262
+ - 1259
+ - 389
+ - 293
+ - 292
+ matching_local_files: 43
+ disposition: Relevant contexts concern other records, tooling, source inventory or pending metadata, not duplicate
+ repairs.
+ limitations: Not every historical comment/review inspected.
+reference_cache_original_hashes:
+ references_cache/PMID_38096814.md: cfafeb4e6a66a2d9d8af04a567ab1304e900407365c48ebffb8a5869e9a38b67
+ references_cache/doi_10.64898_2026.05.29.728681.md: 1f3d14e1aabbc7a6a77b8a9b11256542c1ac05756f52fe98238c9539f62b41b5
+ references_cache/PMID_34622230.md: 4ba93f757b0ef07a93574ee2cfd40a3a5c845f2f6db29ae5791a2c599b9901e9
+reference_cache_update:
+ path: references_cache/doi_10.64898_2026.05.29.728681.md
+ original_sha256: 1f3d14e1aabbc7a6a77b8a9b11256542c1ac05756f52fe98238c9539f62b41b5
+ updated_sha256: b7700cd52d57b88378e6b734cac1dc78196c028ef6daf240bb70ad852943dc66
+ primary_xml_sha256: 17fc38307a05f10ddd0589cbdeda743b4b0a90bc8e5160de3681a63becc6e7aa
+ primary_url: https://www.biorxiv.org/content/early/2026/05/29/2026.05.29.728681.source.xml
+ license: All rights reserved; two brief quotations only
+ quoted_words: 16
+ original_cache_is_exact_prefix: true
+ verified_excerpts:
+ - significantly higher activity when P. vulgatus was present
+ - stronger by lactate than acetate at comparable concentrations
+primary_artifacts:
+ PMC11156429-efetch.xml: 4c81d2c894802f177727f1280121a9ebcc346226ef0ff750a645b616fa03f3c6
+ prebiotic-source.xml: 17fc38307a05f10ddd0589cbdeda743b4b0a90bc8e5160de3681a63becc6e7aa
+ primary-source-extraction.json: 67baea4d5fd55b1994198ea707813af577b5c0ca3ea224195c78f12673141325
+ captions-tables-extraction.json: 2ecc9474f6ef2e9b66c7eddf54cb8c9d28f4ad5b5b18ee80281273bfd9b60b73
+limitations:
+- Whole three records, all ten original nodes and seven arrows reviewed; ten nodes remain, two arrows removed and
+ five partial mechanisms retained. No new graph structure.
+- Full primary main texts and Methods read for all three studies, plus main embedded captions/tables. Phage captions/tables
+ extracted separately and fully read. No original figure pixels, external supplements, raw data or code audited.
+ Preprint version1 is not a peer-reviewed publication.
+- Phage persistence and maternal bacterial sharing are observational. Host/lifestyle assignments, recoding and CAZymes
+ include sequence-based inference. Community richness is not within-phage diversity; phage and bacterial strain
+ thresholds differ.
+- Positive E. coli activity under GOS is higher with P. vulgatus present. Omission affects a community; conditioned
+ supernatants did not reproduce the GOS/glucose difference. Acid challenges support species dependence without
+ a main-text pH-clamped protocol. Donor taxa differ from SynCom members.
+- Bifidobacterium carbohydrate-genome association is preserved. E. coli iron/adhesion findings are not erased, but
+ remain in discussion and unresolved1515 because the canonical roster lacks that organism. Three E. coli persisters
+ came from preterm disease-enriched sampling.
+- Prebiotic roster, R. gnavus availability and ex-vivo motility representation remain unresolved1514; maternal E.
+ coli representation remains unresolved1515. Canonical taxonomy and all non-graph raw blocks preserved, not recertified.
+- Two separate one-community Edison dry runs completed. No paid provider request/report, no credit spend and no
+ new node/arrow; full-prompt review and specific payload/spend authorization remain prerequisites to submission.
+- One preprint cache gains16 exact primary-verified words with XML digest and attribution, original exact prefix
+ preserved.919 other caches unchanged. This is not certification of all historical cache provenance. Full primary
+ texts remain outside the repository.
+- Dedup searched817 all-state issue titles/bodies and43 ignored/hidden local matches; relevant contexts read, not
+ every historical comment or review.1511-1513 stay open until protected-main merge,1514-1515 unresolved. Self-adversarial
+ review is not independent approval.
+- SupportingReference coverage476, Linux DOI-cache lookup1091, selected-cache provenance1362 and writer artifact1095
+ remain limitations; reference CLI Total checks counts reported issues, not executed checks.
+records:
+- path: kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml
+ id: CommunityMech:000223
+ original_sha256: fc5af2b23ad4c8b45e40fd85fddb6b85e682c19fc536fc05cd24c83ab03d9ea8
+ record_sha256: 21f96693bd3c7fd376824ef7fff9897a3d8fbf3843395bb32abd9965c0b50bcf
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
+ scope: Whole record and every original node/arrow; primary-source-bounded existing structure repair.
+ summary: Bound phage persistence to strain-resolved associations and partial maternal/recoding mechanisms.
+ renamed_nodes:
+ Maternal Phage Seeding and Long-Term Persistence: Maternal Phage Sharing and Persistence Association
+ Stop-Codon Reassignment Promotes Phage Persistence: Stop-Codon Reassignment and Phage Persistence Association
+ Stable Infant Viral Colonization: Persistent Infant Phage Strains
+ node_decisions:
+ - node: Maternal Phage Sharing and Persistence Association
+ rationale: Preserve maternal sharing and persistence without universal predation or a wrong denominator.
+ - node: Stop-Codon Reassignment and Phage Persistence Association
+ rationale: Preserve recoding association while distinguishing heterogeneous trajectories from causal lysis effects.
+ - node: Increasing Phageome Richness Toward Adulthood
+ rationale: Preserve developmental community richness without conflating within-phage diversity or restoring
+ an unsupported arrow.
+ - node: Persistent Infant Phage Strains
+ rationale: Preserve strain-defined persistence and cohort scope without a fully resolved joint mechanism.
+ removed_node_decisions: []
+ edges_before:
+ - source: Maternal Phage Seeding and Long-Term Persistence
+ target: Stable Infant Viral Colonization
+ description: Maternal transfer of Bacteroides-infecting early phages is one of the determinants that lets a
+ subset of infant gut phages colonize stably across early life.
+ - source: Stop-Codon Reassignment Promotes Phage Persistence
+ target: Stable Infant Viral Colonization
+ description: Stop-codon reassignment marks phages that persist more often than non-recoded phages across the
+ first 3 years of life.
+ - source: Increasing Phageome Richness Toward Adulthood
+ target: Stable Infant Viral Colonization
+ description: Increasing early-life phageome richness supplies the diverse phage populations associated with
+ stable infant gut viral colonization.
+ edges_after:
+ - source: Maternal Phage Sharing and Persistence Association
+ target: Persistent Infant Phage Strains
+ description: PARTIAL - maternally shared phages may be adapted to the gut or repeatedly introduced, supporting
+ subsequent strain persistence. The longitudinal sharing association supports this model but does not isolate
+ maternal transmission, reseeding or infection direction experimentally.
+ - source: Stop-Codon Reassignment and Phage Persistence Association
+ target: Persistent Infant Phage Strains
+ description: PARTIAL - stop-codon reassignment could alter phage expression or lysis timing and thereby support
+ persistence. Enrichment among persisters and heterogeneous sequence trajectories support the proposed mechanism,
+ not a recoding perturbation demonstrating its necessity or sufficiency.
+ retained_edge_decisions:
+ - source: Maternal Phage Sharing and Persistence Association
+ target: Persistent Infant Phage Strains
+ description: PARTIAL - maternally shared phages may be adapted to the gut or repeatedly introduced, supporting
+ subsequent strain persistence. The longitudinal sharing association supports this model but does not isolate
+ maternal transmission, reseeding or infection direction experimentally.
+ rationale: Retain as PARTIAL with explicit proposed mechanism, positive observations and absent selective mediation
+ evidence.
+ - source: Stop-Codon Reassignment and Phage Persistence Association
+ target: Persistent Infant Phage Strains
+ description: PARTIAL - stop-codon reassignment could alter phage expression or lysis timing and thereby support
+ persistence. Enrichment among persisters and heterogeneous sequence trajectories support the proposed mechanism,
+ not a recoding perturbation demonstrating its necessity or sufficiency.
+ rationale: Retain as PARTIAL with explicit proposed mechanism, positive observations and absent selective mediation
+ evidence.
+ removed_edge_decisions:
+ - source: Increasing Phageome Richness Toward Adulthood
+ target: Stable Infant Viral Colonization
+ description: Increasing early-life phageome richness supplies the diverse phage populations associated with
+ stable infant gut viral colonization.
+ rationale: Community richness is not within-phage diversity or a demonstrated strain-persistence cause.
+ references:
+ - PMID:38096814
+ issues:
+ - 1511
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Infant_Gut_DNA_Phage_Succession_Community/2026-10-06T171848Z-codex-693fe8.yaml
+ source_review:
+ PMID:38096814:
+ cache: references_cache/PMID_38096814.md
+ sha256: cfafeb4e6a66a2d9d8af04a567ab1304e900407365c48ebffb8a5869e9a38b67
+ original_sha256: cfafeb4e6a66a2d9d8af04a567ab1304e900407365c48ebffb8a5869e9a38b67
+ url: https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pmc&id=11156429
+ scope: Complete fresh primary XML main text, STAR Methods, Figures 1-4 captions, Tables 1-2 and key resources
+ read; cache abstract also read.
+- path: kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml
+ id: CommunityMech:000281
+ original_sha256: 094baa2605865105bcb149b6493f4441e5013445b034585cacac0c4c04cabb23
+ record_sha256: 65a7283c698b0a9f7b3644df944199c1f9349c5675c58b84e2d76f746a6a43ac
+ status: needs_research
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
+ scope: Whole record and every original node/arrow; primary-source-bounded existing structure repair.
+ summary: Preserve SynCom omission and acid-challenge results without direct-transfer or universal pH claims.
+ renamed_nodes:
+ Substrate-dependent cross-feeding network: Substrate-Dependent Infant Community Interaction Responses
+ Phocaeicola vulgatus hub modulates Escherichia coli metabolism: Phocaeicola Omission Alters Community Metabolism
+ and Ecoli Activity
+ Lactate-mediated species-specific inhibition: Species-Specific Lactate and Acetate Inhibition
+ node_decisions:
+ - node: Substrate-Dependent Infant Community Interaction Responses
+ rationale: Preserve substrate perturbations and cross-experiment scope without conflating donor and defined
+ community membership.
+ - node: Phocaeicola Omission Alters Community Metabolism and Ecoli Activity
+ rationale: Preserve positive omission and activity effects with correct direction, not direct pairwise metabolite
+ transfer.
+ - node: Species-Specific Lactate and Acetate Inhibition
+ rationale: Preserve species-dependent acid challenge without an unverified pH-clamped protocol or complete mediator
+ assignment.
+ removed_node_decisions: []
+ edges_before:
+ - source: Substrate-dependent cross-feeding network
+ target: Phocaeicola vulgatus hub modulates Escherichia coli metabolism
+ description: Substrate-dependent SynCom rewiring identifies P. vulgatus as the hub that reshapes succinate and
+ propionate production and E. coli metabolic activity.
+ - source: Substrate-dependent cross-feeding network
+ target: Lactate-mediated species-specific inhibition
+ description: Substrate-driven cross-feeding produces fermentation products whose chemical identity, including
+ lactate, determines species-specific competitive inhibition.
+ edges_after:
+ - source: Substrate-Dependent Infant Community Interaction Responses
+ target: Species-Specific Lactate and Acetate Inhibition
+ description: PARTIAL - substrate-dependent fermentation can supply lactate whose accumulation may suppress susceptible
+ members. Community metabolite profiles, binary growth responses and separate acid challenges support this
+ route, but selective lactate depletion/rescue was not demonstrated in the inspected complete-community experiments;
+ pH and other products can also contribute.
+ retained_edge_decisions:
+ - source: Substrate-Dependent Infant Community Interaction Responses
+ target: Species-Specific Lactate and Acetate Inhibition
+ description: PARTIAL - substrate-dependent fermentation can supply lactate whose accumulation may suppress susceptible
+ members. Community metabolite profiles, binary growth responses and separate acid challenges support this
+ route, but selective lactate depletion/rescue was not demonstrated in the inspected complete-community experiments;
+ pH and other products can also contribute.
+ rationale: Retain as PARTIAL with explicit proposed mechanism, positive observations and absent selective mediation
+ evidence.
+ removed_edge_decisions:
+ - source: Substrate-dependent cross-feeding network
+ target: Phocaeicola vulgatus hub modulates Escherichia coli metabolism
+ description: Substrate-dependent SynCom rewiring identifies P. vulgatus as the hub that reshapes succinate and
+ propionate production and E. coli metabolic activity.
+ rationale: Identifying a component of a network is not an upstream biological cause of its effect.
+ references:
+ - doi:10.64898/2026.05.29.728681
+ issues:
+ - 1512
+ - 1514
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Infant_Gut_Prebiotic_Response_SynCom/2026-10-06T171849Z-codex-b60937.yaml
+ source_review:
+ doi:10.64898/2026.05.29.728681:
+ cache: references_cache/doi_10.64898_2026.05.29.728681.md
+ sha256: b7700cd52d57b88378e6b734cac1dc78196c028ef6daf240bb70ad852943dc66
+ original_sha256: 1f3d14e1aabbc7a6a77b8a9b11256542c1ac05756f52fe98238c9539f62b41b5
+ url: https://www.biorxiv.org/content/early/2026/05/29/2026.05.29.728681.source.xml
+ scope: Complete fresh primary preprint version-1 XML main text, Methods and embedded Figures 1-5 captions
+ read; cache abstract also read.
+- path: kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml
+ id: CommunityMech:000240
+ original_sha256: b55d38c622b7993e54dd2735e7f2f6cad9a189cb0c3ce2ee7a2eaaf111c33211
+ record_sha256: 628d4ae9504b000f14951fa6179843051f2fad9f0a56b8f5ee89aae6a48e5e00
+ status: needs_research
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml
+ scope: Whole record and every original node/arrow; primary-source-bounded existing structure repair.
+ summary: Correct persistence trait ownership and preserve taxon-specific genomic associations.
+ renamed_nodes:
+ Maternal Strain Seeding Drives Persistence: Maternal Strain Sharing and Persistence Association
+ Persistence Traits Encoded in Genomes: Bifidobacterium Persister Carbohydrate-Gene Enrichment
+ node_decisions:
+ - node: Maternal Strain Sharing and Persistence Association
+ rationale: Preserve maternal sharing association with Bacteroides-rich scope, not a dominant driver for every
+ genus.
+ - node: Bifidobacterium Persister Carbohydrate-Gene Enrichment
+ rationale: Retain Bifidobacterium genomic carbohydrate association without importing E. coli iron/adhesion traits.
+ - node: Bacteroides and Bifidobacterium First-Year Persistence
+ rationale: Retain observed persister genera with correct denominator, sampling threshold and no generic trait
+ assignment.
+ removed_node_decisions: []
+ edges_before:
+ - source: Maternal Strain Seeding Drives Persistence
+ target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: Vertically transmitted maternal gut strains were significantly more likely to become infant persisters,
+ and persistent early colonizers were concentrated in Bacteroides and Bifidobacterium.
+ - source: Persistence Traits Encoded in Genomes
+ target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: Genes for surface adhesion, iron acquisition, and carbohydrate degradation were enriched in persistent
+ strains, providing functional traits that may explain their first-year retention.
+ edges_after:
+ - source: Maternal Strain Sharing and Persistence Association
+ target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: PARTIAL - maternal gut adaptation or repeated introduction could support infant retention of shared
+ strains, particularly the Bacteroides-enriched maternal subset. The observational association does not isolate
+ either mechanism or explain all Bifidobacterium persisters.
+ - source: Bifidobacterium Persister Carbohydrate-Gene Enrichment
+ target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: PARTIAL - a broader encoded carbohydrate repertoire could support substrate use and persistence
+ of Bifidobacterium strains within the downstream persister group. Within-genus enrichment supports this hypothesis,
+ not measured enzyme flux or necessity, and does not assign E. coli iron/adhesion traits to Bacteroides or
+ Bifidobacterium.
+ retained_edge_decisions:
+ - source: Maternal Strain Sharing and Persistence Association
+ target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: PARTIAL - maternal gut adaptation or repeated introduction could support infant retention of shared
+ strains, particularly the Bacteroides-enriched maternal subset. The observational association does not isolate
+ either mechanism or explain all Bifidobacterium persisters.
+ rationale: Retain as PARTIAL with explicit proposed mechanism, positive observations and absent selective mediation
+ evidence.
+ - source: Bifidobacterium Persister Carbohydrate-Gene Enrichment
+ target: Bacteroides and Bifidobacterium First-Year Persistence
+ description: PARTIAL - a broader encoded carbohydrate repertoire could support substrate use and persistence
+ of Bifidobacterium strains within the downstream persister group. Within-genus enrichment supports this hypothesis,
+ not measured enzyme flux or necessity, and does not assign E. coli iron/adhesion traits to Bacteroides or
+ Bifidobacterium.
+ rationale: Retain as PARTIAL with explicit proposed mechanism, positive observations and absent selective mediation
+ evidence.
+ removed_edge_decisions: []
+ references:
+ - PMID:34622230
+ issues:
+ - 1513
+ - 1515
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Infant_Gut_Strain_Persistence_Maternal_Community/2026-10-06T171849Z-codex-e76020.yaml
+ source_review:
+ PMID:34622230:
+ cache: references_cache/PMID_34622230.md
+ sha256: 4ba93f757b0ef07a93574ee2cfd40a3a5c845f2f6db29ae5791a2c599b9901e9
+ original_sha256: 4ba93f757b0ef07a93574ee2cfd40a3a5c845f2f6db29ae5791a2c599b9901e9
+ url: https://doi.org/10.1016/j.xcrm.2021.100393
+ scope: Complete cached primary main text, STAR Methods, Table 1 and Figures 1-6 captions read, despite historical
+ abstract-only header.
diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv
index 98345f722..2568af9c3 100644
--- a/reports/causal_graph_review/inventory.tsv
+++ b/reports/causal_graph_review/inventory.tsv
@@ -200,9 +200,9 @@ kb/communities/Human_Gut_FourMember_Proteome_Complementarity_Consortium.yaml Com
kb/communities/Iberian_Pit_Lake_Stratified_Community.yaml CommunityMech:000034 849626f1d5bc82bead855d41117508cdc48dd20c3e696864047368344c14b5ab 5 0 65.0 reports/causal_graph_review/decisions/20261006-pitlakes-bioleach-biofilm-batch53.yaml reviewed
kb/communities/Industrial_Bioreactor_Consortium.yaml CommunityMech:000035 71160959bae2c8e3f0caf63d57452a597e29967f70faea6bec59016752b9aad4 9 0 63.9 reports/causal_graph_review/decisions/20261006-pitlakes-bioleach-biofilm-batch53.yaml needs_research
kb/communities/Industrial_Milk_Line_FourSpecies_Model_Biofilm.yaml CommunityMech:000152 d11705d887a01509f631792a193c61ea0c57af05e3ac4d50ae2a2f08ab107f8d 3 2 90.0 reports/causal_graph_review/decisions/20261006-pitlakes-bioleach-biofilm-batch53.yaml reviewed
-kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml CommunityMech:000223 fc5af2b23ad4c8b45e40fd85fddb6b85e682c19fc536fc05cd24c83ab03d9ea8 4 3 100.0 pending
-kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml CommunityMech:000281 094baa2605865105bcb149b6493f4441e5013445b034585cacac0c4c04cabb23 3 2 100.0 pending
-kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml CommunityMech:000240 b55d38c622b7993e54dd2735e7f2f6cad9a189cb0c3ce2ee7a2eaaf111c33211 3 2 100.0 pending
+kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml CommunityMech:000223 21f96693bd3c7fd376824ef7fff9897a3d8fbf3843395bb32abd9965c0b50bcf 4 2 88.8 reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml reviewed
+kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml CommunityMech:000281 65a7283c698b0a9f7b3644df944199c1f9349c5675c58b84e2d76f746a6a43ac 3 1 80.0 reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml needs_research
+kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml CommunityMech:000240 628d4ae9504b000f14951fa6179843051f2fad9f0a56b8f5ee89aae6a48e5e00 3 2 86.7 reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml needs_research
kb/communities/Ion_Adsorption_REE_Indigenous_Community.yaml CommunityMech:000036 1ff9a8dfbeb6fc987d41baa44a6022aa9df027634214684722c01b141873bc21 5 3 100.0 pending
kb/communities/Jala_Maize_PGPB_SynCom.yaml CommunityMech:000099 df8ec76afd60a1db220eb761731b8ac9f694681b0804b754f08ee1e04a3a1862 5 5 100.0 pending
kb/communities/Jiangshui_LAB_Directed_Fermentation_SynCom.yaml CommunityMech:000356 ac47988e722840fd5a4e813bfa7d35c1b9b1e75d101732954cc4866a0c1907b2 3 2 88.3 pending
diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json
index 68f6f760d..7b26ee95b 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": 1465,
- "edges": 666,
+ "edges": 664,
"records_without_nodes": 8,
"records_without_edges": 154,
"review_status_counts": {
- "needs_research": 16,
- "pending": 261,
- "reviewed": 183
+ "needs_research": 18,
+ "pending": 258,
+ "reviewed": 184
},
"structural_defects": [],
"network_audit": [
diff --git a/reports/causal_graph_review/validation-20261006-batch54.json b/reports/causal_graph_review/validation-20261006-batch54.json
new file mode 100644
index 000000000..d6eaa8269
--- /dev/null
+++ b/reports/causal_graph_review/validation-20261006-batch54.json
@@ -0,0 +1,834 @@
+{
+ "base_commit": "37f2bdb83ad6175bbbf9bb12df3bf776fa331771",
+ "scope": [
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml"
+ ],
+ "reference_validator_version": "0.1.7",
+ "results": [
+ {
+ "check": "Infant_Gut_DNA_Phage_Succession_Community-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Infant_Gut_DNA_Phage_Succession_Community-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-strict.tsv",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-strict.log",
+ "log_sha256": "68dbed320b6cd91246ac7e2bd9856b7b601237d81cbe2b44044c0d2812ee4e84",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch54/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-batch54/Infant_Gut_DNA_Phage_Succession_Community-strict.tsv\n"
+ },
+ {
+ "check": "Infant_Gut_DNA_Phage_Succession_Community-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Infant_Gut_DNA_Phage_Succession_Community-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-references.log",
+ "log_sha256": "b3cb95bbd032d3111957504bb7f71647efd137c99fe1de408844cdae63fed747",
+ "output_tail": "Validating kb/communities/Infant_Gut_DNA_Phage_Succession_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/Infant_Gut_DNA_Phage_Succession_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": "Infant_Gut_DNA_Phage_Succession_Community-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-snippets.log",
+ "log_sha256": "1835af07ebf0373785ca2d25de18c6984a3cbcfdec0d2610f1d8437504408710",
+ "output_tail": "# 10 evidence snippets scanned across 1 files\n MATCH 10\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n"
+ },
+ {
+ "check": "Infant_Gut_DNA_Phage_Succession_Community-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-rank.log",
+ "log_sha256": "a6f5e873f375f08a2d797afed10b842a22dcb8c3ca8caeb9045b9ea1353ae31a",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000223\",\n \"name\": \"Infant Gut DNA Phageome Succession Community\",\n \"score\": 88.8,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 4,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Infant_Gut_DNA_Phage_Succession_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/Infant_Gut_DNA_Phage_Succession_Community/2026-10-06T171848Z-codex-693fe8.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_DNA_Phage_Succession_Community-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Infant_Gut_Prebiotic_Response_SynCom-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Infant_Gut_Prebiotic_Response_SynCom-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-strict.tsv",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-strict.log",
+ "log_sha256": "1f0f8a35cab7032b54af3432b7a6707e77b55afd659ab135379b1d35c562c323",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch54/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-batch54/Infant_Gut_Prebiotic_Response_SynCom-strict.tsv\n"
+ },
+ {
+ "check": "Infant_Gut_Prebiotic_Response_SynCom-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Infant_Gut_Prebiotic_Response_SynCom-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-references.log",
+ "log_sha256": "559f95d842768ab8987d7d60a3aca8eddf0f520bbcbae4461c9f1a8411380abc",
+ "output_tail": "Validating kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "Infant_Gut_Prebiotic_Response_SynCom-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-snippets.log",
+ "log_sha256": "4450b5ff1101bc2d6072d1dbe68983556781062b26a30ff5ad5b7d81a7b14c1b",
+ "output_tail": "# 8 evidence snippets scanned across 1 files\n MATCH 8\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": "Infant_Gut_Prebiotic_Response_SynCom-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-rank.log",
+ "log_sha256": "9870c8d9aca0c4fb46fd74641b548596099324a8b766e2ae7c9ae9c9c8a9b90f",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000281\",\n \"name\": \"Infant-gut Prebiotic-response SynCom\",\n \"score\": 80.0,\n \"taxonomy\": 4,\n \"connected_taxa\": 4,\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/Infant_Gut_Prebiotic_Response_SynCom.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Infant_Gut_Prebiotic_Response_SynCom-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Infant_Gut_Prebiotic_Response_SynCom/2026-10-06T171849Z-codex-b60937.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Prebiotic_Response_SynCom-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Infant_Gut_Strain_Persistence_Maternal_Community-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Infant_Gut_Strain_Persistence_Maternal_Community-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-strict.tsv",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-strict.log",
+ "log_sha256": "1bd76347130eb61578a1c6b090fd3ccd5a2808a31f76ed4bd507a4775d3edf06",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch54/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-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-strict.tsv\n"
+ },
+ {
+ "check": "Infant_Gut_Strain_Persistence_Maternal_Community-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Infant_Gut_Strain_Persistence_Maternal_Community-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-references.log",
+ "log_sha256": "36ac398f8beb83402d3d3e585d268af487d11ccd48732801b6ef23b2864bfcbc",
+ "output_tail": "Validating kb/communities/Infant_Gut_Strain_Persistence_Maternal_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/Infant_Gut_Strain_Persistence_Maternal_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": "Infant_Gut_Strain_Persistence_Maternal_Community-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-snippets.log",
+ "log_sha256": "1835af07ebf0373785ca2d25de18c6984a3cbcfdec0d2610f1d8437504408710",
+ "output_tail": "# 10 evidence snippets scanned across 1 files\n MATCH 10\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n"
+ },
+ {
+ "check": "Infant_Gut_Strain_Persistence_Maternal_Community-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-rank.log",
+ "log_sha256": "4db56a6811f4edc27dd9b0e2ee7f70c9287fb3e413a6ba7af80180e1fb9f0ecf",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000240\",\n \"name\": \"Infant Gut Strain Persistence and Maternal Seeding Community\",\n \"score\": 86.7,\n \"taxonomy\": 3,\n \"connected_taxa\": 3,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Infant_Gut_Strain_Persistence_Maternal_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/Infant_Gut_Strain_Persistence_Maternal_Community/2026-10-06T171849Z-codex-e76020.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/Infant_Gut_Strain_Persistence_Maternal_Community-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-batch54/inventory.log",
+ "log_sha256": "f59f982ba774c715feb667334ca1fe5a9e4903d1db6510b9a3da18af67d3d67b",
+ "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\": 1465,\n \"edges\": 664,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 154,\n \"review_status_counts\": {\n \"needs_research\": 18,\n \"pending\": 258,\n \"reviewed\": 184\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-batch54/network.log",
+ "log_sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e",
+ "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-batch54/rank-all.log",
+ "log_sha256": "c36f562245132145f1bacfc96a0de9fb25f07e1d1fb44b492e00c1c0601d5f32",
+ "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-batch54/render.log",
+ "log_sha256": "a151af5ecffd4edff46cbbeafe517730eba2ff8807a0373b2a17ecff60135685",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch54/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch54/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch54/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-batch54/render-repeat.log",
+ "log_sha256": "a151af5ecffd4edff46cbbeafe517730eba2ff8807a0373b2a17ecff60135685",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch54/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch54/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch54/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch54/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-batch53')), ('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-batch54/connectivity-survey.log",
+ "log_sha256": "90780526c8112305aedd91b13fc47e57fb67d81be74300238428b6c3fcc771a0",
+ "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 389, \"mixed\": 127, \"community_level_only\": 262, \"taxa\": 1498, \"credited_solely_by_the_rule\": 1222}, \"current\": {\"records\": 460, \"with_community_level\": 389, \"mixed\": 125, \"community_level_only\": 264, \"taxa\": 1498, \"credited_solely_by_the_rule\": 1226}}\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_batch6.py",
+ "tests/test_causal_review_batch7.py",
+ "tests/test_causal_review_batch8.py",
+ "tests/test_causal_review_batch9.py",
+ "tests/test_site_audit_fixes.py",
+ "tests/test_causal_review_inventory.py",
+ "tests/test_rank_causal_graph_readiness.py",
+ "tests/test_network_auditor.py",
+ "tests/test_participating_taxa.py",
+ "tests/test_causal_descriptions_are_published.py",
+ "tests/test_published_pages_name_real_records.py",
+ "tests/test_reference_validator_actually_validates.py",
+ "tests/test_snippet_audit_artefact_classes.py",
+ "tests/test_reference_error_annotation.py",
+ "tests/test_community_level_connectivity_credit.py",
+ "tests/test_no_paywalled_text_in_repo.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/regressions.log",
+ "log_sha256": "923ca7208674c97ea5c7c0ac1d22a01f1fcc49d9d81945f219537ee15209d634",
+ "output_tail": "........................................................................ [ 14%]\n........................................................................ [ 28%]\n........................................................................ [ 42%]\n........................................................................ [ 56%]\n........................................................................ [ 70%]\n........................................................................ [ 84%]\n........................................................................ [ 98%]\n....... [100%]\n511 passed in 220.50s (0:03:40)\n"
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch54.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/black.log",
+ "log_sha256": "b9cf511501d306d2bd8355ccb165c8ddc0a6fdd62d7c72c4a7b1795cf8934c8c",
+ "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n2 files would be left unchanged.\n"
+ },
+ {
+ "check": "ruff",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff",
+ "check",
+ "tests/test_causal_review_batch54.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch54/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-batch54/diff-check.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "output_tail": ""
+ }
+ ],
+ "limitations": [
+ "Whole three records, all ten original nodes and seven arrows reviewed; ten nodes remain, two arrows removed and five partial mechanisms retained. No new graph structure.",
+ "Full primary main texts and Methods read for all three studies, plus main embedded captions/tables. Phage captions/tables extracted separately and fully read. No original figure pixels, external supplements, raw data or code audited. Preprint version1 is not a peer-reviewed publication.",
+ "Phage persistence and maternal bacterial sharing are observational. Host/lifestyle assignments, recoding and CAZymes include sequence-based inference. Community richness is not within-phage diversity; phage and bacterial strain thresholds differ.",
+ "Positive E. coli activity under GOS is higher with P. vulgatus present. Omission affects a community; conditioned supernatants did not reproduce the GOS/glucose difference. Acid challenges support species dependence without a main-text pH-clamped protocol. Donor taxa differ from SynCom members.",
+ "Bifidobacterium carbohydrate-genome association is preserved. E. coli iron/adhesion findings are not erased, but remain in discussion and unresolved1515 because the canonical roster lacks that organism. Three E. coli persisters came from preterm disease-enriched sampling.",
+ "Prebiotic roster, R. gnavus availability and ex-vivo motility representation remain unresolved1514; maternal E. coli representation remains unresolved1515. Canonical taxonomy and all non-graph raw blocks preserved, not recertified.",
+ "Two separate one-community Edison dry runs completed. No paid provider request/report, no credit spend and no new node/arrow; full-prompt review and specific payload/spend authorization remain prerequisites to submission.",
+ "One preprint cache gains16 exact primary-verified words with XML digest and attribution, original exact prefix preserved.919 other caches unchanged. This is not certification of all historical cache provenance. Full primary texts remain outside the repository.",
+ "Dedup searched817 all-state issue titles/bodies and43 ignored/hidden local matches; relevant contexts read, not every historical comment or review.1511-1513 stay open until protected-main merge,1514-1515 unresolved. Self-adversarial review is not independent approval.",
+ "SupportingReference coverage476, Linux DOI-cache lookup1091, selected-cache provenance1362 and writer artifact1095 remain limitations; reference CLI Total checks counts reported issues, not executed checks.",
+ "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate.",
+ "CLI Total checks counts reported issues, not executed checks. Exit0 means no issues reported, not independent source verification. SupportingReference coverage476, Linux DOI-cache lookup1091 and selected-cache provenance1362 remain limitations."
+ ],
+ "snippet_counts_by_record": {
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml": {
+ "MATCH": 10,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml": {
+ "MATCH": 8,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml": {
+ "MATCH": 10,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ }
+ },
+ "unchanged_raw_blocks": 41,
+ "unchanged_record_files": 457,
+ "unchanged_cache_files": 919,
+ "verified_cache_update": {
+ "path": "references_cache/doi_10.64898_2026.05.29.728681.md",
+ "original_sha256": "1f3d14e1aabbc7a6a77b8a9b11256542c1ac05756f52fe98238c9539f62b41b5",
+ "updated_sha256": "b7700cd52d57b88378e6b734cac1dc78196c028ef6daf240bb70ad852943dc66",
+ "primary_xml_sha256": "17fc38307a05f10ddd0589cbdeda743b4b0a90bc8e5160de3681a63becc6e7aa",
+ "primary_url": "https://www.biorxiv.org/content/early/2026/05/29/2026.05.29.728681.source.xml",
+ "license": "All rights reserved; two brief quotations only",
+ "quoted_words": 16,
+ "original_cache_is_exact_prefix": true,
+ "verified_excerpts": [
+ "significantly higher activity when P. vulgatus was present",
+ "stronger by lactate than acetate at comparable concentrations"
+ ],
+ "all_excerpts_matched_retrieved_primary_xml": true
+ },
+ "network_delta": {
+ "existing_findings_preserved": 34,
+ "added_findings": {},
+ "removed_findings": {}
+ },
+ "render_determinism": true,
+ "published_description_coverage": {
+ "pages": 456,
+ "nodes": 1451,
+ "arrows": 656
+ },
+ "participant_census": {
+ "measurements": {
+ "baseline": {
+ "records": 460,
+ "with_community_level": 389,
+ "mixed": 127,
+ "community_level_only": 262,
+ "taxa": 1498,
+ "credited_solely_by_the_rule": 1222
+ },
+ "current": {
+ "records": 460,
+ "with_community_level": 389,
+ "mixed": 125,
+ "community_level_only": 264,
+ "taxa": 1498,
+ "credited_solely_by_the_rule": 1226
+ }
+ },
+ "interpretation": "Two unsupported pairwise categories become explicitly scoped community observations; mixed records decrease by2 and solely community-credited taxa increase by4. All ten nodes use canonical participants; two registry entries added. No production matching or census-bound changes."
+ },
+ "corpus": {
+ "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.",
+ "records": 460,
+ "nodes": 1465,
+ "edges": 664,
+ "records_without_nodes": 8,
+ "records_without_edges": 154,
+ "review_status_counts": {
+ "needs_research": 18,
+ "pending": 258,
+ "reviewed": 184
+ },
+ "structural_defects": []
+ },
+ "tested_file_sha256": {
+ "reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml": "ff5d4ea5cd65b708761ae8dca47873caf593ddd66dadd4567be44931d281e51c",
+ "tests/test_causal_review_batch54.py": "8fe624722e974387759985362d4f773cd11147b80e8402f10647b536eb322252",
+ "tests/test_participating_taxa.py": "2900495de54dd0b4ac414280553709bdc375aba14233f9af43a8492af517d7b2",
+ "kb/communities/Infant_Gut_DNA_Phage_Succession_Community.yaml": "21f96693bd3c7fd376824ef7fff9897a3d8fbf3843395bb32abd9965c0b50bcf",
+ "kb/communities/Infant_Gut_Prebiotic_Response_SynCom.yaml": "65a7283c698b0a9f7b3644df944199c1f9349c5675c58b84e2d76f746a6a43ac",
+ "kb/communities/Infant_Gut_Strain_Persistence_Maternal_Community.yaml": "628d4ae9504b000f14951fa6179843051f2fad9f0a56b8f5ee89aae6a48e5e00",
+ "reports/causal_graph_review/README.md": "d06ac7e34b980a5f2372afd3af393c534ecf61cbd7f4bd637db560b4c0b905ea"
+ },
+ "status": "verified_infant_gut_graph_repair",
+ "reference_validator_caveat": "CLI Total checks counts reported issues, not executed checks. Exit0 means no issues reported, not independent source verification. SupportingReference coverage476, Linux DOI-cache lookup1091 and selected-cache provenance1362 remain limitations.",
+ "pre_research_baseline": {
+ "base_commit": "37f2bdb83ad6175bbbf9bb12df3bf776fa331771",
+ "base_tree": "ad48a72795d78b1b2136001656075aec0ef9c0e9",
+ "research_worktree": "/private/tmp/communitymech-causal-batch53",
+ "checks": [
+ {
+ "name": "rank",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_code": 0,
+ "log": "/private/tmp/communitymech-batch54/baseline-rank.log",
+ "sha256": "fd6e08de1f7c6353e410c49cac10f9780064d343e7ea3b1d99917944e27b3ac2",
+ "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-batch54/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-batch54/baseline-network.log",
+ "sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e",
+ "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-batch54/baseline-downstream.log",
+ "sha256": "510b7ba7f2b58f9490882f3ea4eff709eb51b2567f88de2eaf148eddd31d25c2",
+ "output_tail": "hermocellum_Saccharoperbutylacetonicum_Cellulosic_Butanol_Coculture.yaml:147: downstream:\nkb/communities/Clostridium_Thermocellum_Saccharoperbutylacetonicum_Cellulosic_Butanol_Coculture.yaml:222: 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/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:268: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:315: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:120: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:152: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:125: downstream:\nkb/communities/PSY_Transgenic_Rice_Rhizosphere_Methane_Community.yaml:176: downstream:\nkb/communities/PSY_Transgenic_Rice_Rhizosphere_Methane_Community.yaml:221: downstream:\nkb/communities/PSY_Transgenic_Rice_Rhizosphere_Methane_Community.yaml:248: downstream:\nkb/communities/Synechococcus_Ecoli_SPC.yaml:135: downstream:\nkb/communities/Synechococcus_Ecoli_SPC.yaml:168: downstream:\nkb/communities/Phosphitivorax_Methanoculleus_Lithosyntrophy_Phosphite_Coculture.yaml:100: downstream:\nkb/communities/Phosphitivorax_Methanoculleus_Lithosyntrophy_Phosphite_Coculture.yaml:139: downstream:\nkb/communities/Tomato_Oxylipin_SynCom3.yaml:107: downstream:\nkb/communities/Tomato_Oxylipin_SynCom3.yaml:137: downstream:\nkb/communities/PMI_Variovorax_Thermotolerance_Collection.yaml:330: downstream:\nkb/communities/Cinnamate_Degradation_Consortium.yaml:120: downstream:\nkb/communities/Cinnamate_Degradation_Consortium.yaml:168: downstream:\nkb/communities/Methylocaldum_Methyloceanibacter_Methane_Crossfeeding_Coculture.yaml:153: downstream:\nkb/communities/Industrial_Milk_Line_FourSpecies_Model_Biofilm.yaml:255: downstream:\n"
+ }
+ ],
+ "baseline_sha256": "5ab0ca7e8ca1bd266b34c274a034d4d62a2b8a49db74c48caba9c69a21a11416"
+ },
+ "edison_dry_runs": [
+ {
+ "command": [
+ "just",
+ "research-community-causal",
+ "Infant_Gut_Prebiotic_Response_SynCom",
+ "--dry-run",
+ "--out-dir",
+ "/private/tmp/communitymech-batch54/prebiotic-dry-run"
+ ],
+ "exit_code": 0,
+ "status": "dry-run",
+ "job": "LITERATURE",
+ "query_chars": 8374,
+ "query_sha256": "43964e015e0f116c0dc80c73fdb5a566ecaeef2e0fef1deff845446ddcc1e08c",
+ "metadata_path": "/private/tmp/communitymech-batch54/prebiotic-dry-run/Infant_Gut_Prebiotic_Response_SynCom-edison-literature-causal-meta.yaml",
+ "metadata_sha256": "bea03841ffe4ef38ba733bf3e294e536bb8229dd497a6d1e1cc8008142f724c9",
+ "provider_calls": 0,
+ "paid_report_obtained": false,
+ "full_prompt_reviewed": false,
+ "scope": "Separate single-community dry run only; optional model-cost metadata lookup fell back locally. Full-prompt review and specific payload/spend authorization remain prerequisites to submission."
+ },
+ {
+ "command": [
+ "just",
+ "research-community-causal",
+ "Infant_Gut_Strain_Persistence_Maternal_Community",
+ "--dry-run",
+ "--out-dir",
+ "/private/tmp/communitymech-batch54/maternal-dry-run"
+ ],
+ "exit_code": 0,
+ "status": "dry-run",
+ "job": "LITERATURE",
+ "query_chars": 8472,
+ "query_sha256": "373b5196c6280d79401ffe2f55110c1947b03597aa8a93bd6f39e5a55102a5ce",
+ "metadata_path": "/private/tmp/communitymech-batch54/maternal-dry-run/Infant_Gut_Strain_Persistence_Maternal_Community-edison-literature-causal-meta.yaml",
+ "metadata_sha256": "a669d2139bccade13dd5c9173156f0bb3f8292ef83160a08883f5f3f27c129c7",
+ "provider_calls": 0,
+ "paid_report_obtained": false,
+ "full_prompt_reviewed": false,
+ "scope": "Separate single-community dry run only; optional model-cost metadata lookup fell back locally. Full-prompt review and specific payload/spend authorization remain prerequisites to submission."
+ }
+ ]
+}
diff --git a/tests/test_causal_review_batch54.py b/tests/test_causal_review_batch54.py
new file mode 100644
index 000000000..d5ea76a67
--- /dev/null
+++ b/tests/test_causal_review_batch54.py
@@ -0,0 +1,143 @@
+"""Pin infant-gut causal strength, taxon ownership and positive interventions."""
+
+import hashlib
+from pathlib import Path
+
+import yaml
+
+ROOT = Path(__file__).resolve().parents[1]
+LEDGER = ROOT / "reports/causal_graph_review/decisions/20261006-infant-gut-batch54.yaml"
+
+
+def records():
+ ledger = yaml.safe_load(LEDGER.read_text())
+ return ledger, [yaml.safe_load((ROOT / r["path"]).read_text()) for r in ledger["records"]]
+
+
+def test_explicit_canonical_participants_do_not_assert_pairwise_transfer():
+ _, docs = records()
+ expected = [[[0, 1], [0], [0], [0, 1]], [[0, 1, 2, 3], [2, 3], [2, 3]], [[2], [1], [0, 1]]]
+ for doc, scopes in zip(docs, expected, strict=True):
+ for node, indexes in zip(doc["ecological_interactions"], scopes, strict=True):
+ assert node["scope"] == "COMMUNITY_LEVEL"
+ assert not {"source_taxon", "target_taxon", "interaction_type"} & node.keys()
+ assert node["participating_taxa"] == [
+ {
+ "preferred_term": doc["taxonomy"][i]["taxon_term"]["preferred_term"],
+ "term": doc["taxonomy"][i]["taxon_term"]["term"],
+ }
+ for i in indexes
+ ]
+
+
+def test_phage_associations_keep_denominators_and_heterogeneous_recoding():
+ _, (doc, _, _) = records()
+ maternal, recoding, richness, stable = doc["ecological_interactions"]
+ assert "155 of 1801" in maternal["description"]
+ assert "40 infants" in stable["description"]
+ assert "not all measured phages" in maternal["description"]
+ assert "including decreases" in recoding["description"]
+ assert recoding["evidence"][0]["supports"] == "SUPPORT"
+ assert recoding["evidence"][1]["supports"] == "PARTIAL"
+ assert "nucleotide diversity" in richness["description"]
+ assert "downstream" not in richness
+ assert "99 percent" in stable["description"]
+
+
+def test_prebiotic_omission_retains_positive_effect_in_the_correct_direction():
+ _, (_, doc, _) = records()
+ network, hub, inhibition = doc["ecological_interactions"]
+ assert "cross-experiment subset" in network["description"]
+ assert "P. dorei and L. rhamnosus" in network["description"]
+ assert "higher E. coli activity with P. vulgatus present" in hub["description"]
+ assert "without an abundance change in that assay" in hub["description"]
+ assert "not proof of direct two-member" in hub["description"]
+ assert "did not differ between GOS and glucose" in hub["description"]
+ assert all(ev["supports"] == "SUPPORT" for ev in hub["evidence"])
+ assert [e["target"] for e in network["downstream"]] == [inhibition["name"]]
+ assert all("not a demonstrated molecule transferred" in t["notes"] for t in hub["metabolites"])
+
+
+def test_acid_challenge_is_positive_without_an_invented_ph_clamp():
+ _, (_, doc, _) = records()
+ node = doc["ecological_interactions"][2]
+ assert "stronger inhibition" in node["description"]
+ assert "E. coli less affected" in node["description"]
+ assert "additive effects of pH and acid identity" in node["description"]
+ assert "exact acid-challenge protocol is not in the main Methods" in node["description"]
+ assert node["evidence"][0]["supports"] == "SUPPORT"
+ assert (
+ "selective lactate depletion/rescue"
+ in doc["ecological_interactions"][0]["downstream"][0]["description"]
+ )
+
+
+def test_bacterial_traits_belong_to_the_measured_taxon_not_every_persister():
+ _, (_, _, doc) = records()
+ seeding, traits, persistence = doc["ecological_interactions"]
+ assert "Bifidobacterium strains often lacked a maternal match" in seeding["description"]
+ assert "12 Bifidobacterium persisters and 18 non-persisters" in traits["description"]
+ assert [p["term"]["id"] for p in traits["biological_processes"]] == ["GO:0005975"]
+ assert traits["evidence"][0]["evidence_source"] == "COMPUTATIONAL"
+ assert traits["evidence"][0]["supports"] == "SUPPORT"
+ assert "59 of 560" in persistence["description"]
+ assert "month eight or later" in persistence["description"]
+ assert "99.999 percent" in persistence["description"]
+ assert "biological_processes" not in persistence
+ assert "three persisters versus 25 non-persisters" in doc["discussions"][-1]["rationale"]
+
+
+def test_all_retained_arrows_are_qualified_and_research_gaps_stay_open():
+ ledger, docs = records()
+ assert ledger["unresolved_research_issues"] == [1514, 1515]
+ assert [r["status"] for r in ledger["records"]] == [
+ "reviewed",
+ "needs_research",
+ "needs_research",
+ ]
+ all_edges = [
+ e for d in docs for n in d["ecological_interactions"] for e in n.get("downstream", [])
+ ]
+ assert len(all_edges) == 5
+ assert all(e["description"].startswith("PARTIAL - ") for e in all_edges)
+ assert "PEA was below detection" in docs[1]["discussions"][-1]["rationale"]
+ assert "#1514" in docs[1]["discussions"][-1]["rationale"]
+ assert "#1515" in docs[2]["discussions"][-1]["rationale"]
+
+
+def test_cache_appendix_preserves_prefix_and_short_primary_verified_quotes():
+ ledger, _ = records()
+ update = ledger["reference_cache_update"]
+ raw = (ROOT / update["path"]).read_bytes()
+ original, marker, extra = raw.partition(b"\n\n## Primary-Source Excerpts (2026-10-06)")
+ assert marker and extra
+ assert hashlib.sha256(original).hexdigest() == update["original_sha256"]
+ assert hashlib.sha256(raw).hexdigest() == update["updated_sha256"]
+ assert update["primary_xml_sha256"].encode() in extra
+ assert b"not a complete full-text cache" in extra
+ assert sum(len(q.split()) for q in update["verified_excerpts"]) == update["quoted_words"] == 16
+ assert all(q.encode() in extra for q in update["verified_excerpts"])
+
+
+def test_every_original_node_and_arrow_has_a_hash_bound_decision():
+ ledger, docs = records()
+ assert ledger["independent_approval"] is False
+ assert ledger["issues"] == [1511, 1512, 1513]
+ assert ledger["issue_deduplication"]["ignored_hidden_local_search"] is True
+ for i, (row, doc) in enumerate(zip(ledger["records"], docs, strict=True)):
+ nodes = doc["ecological_interactions"]
+ names = {n["name"] for n in nodes}
+ assert len(nodes) == [4, 3, 3][i]
+ assert {d["node"] for d in row["node_decisions"]} == names
+ assert row["removed_node_decisions"] == []
+ assert len(row["edges_before"]) == [3, 2, 2][i]
+ assert len(row["retained_edge_decisions"]) == [2, 1, 2][i]
+ assert len(row["removed_edge_decisions"]) == [1, 1, 0][i]
+ for n in nodes:
+ assert all(e["target"] in names for e in n.get("downstream", []))
+ assert all(
+ a.split("#", 1)[1] in names for d in doc["discussions"] for a in d["attaches_to"]
+ )
+ assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"]
+ assert len(row["history_files"]) == 1 and (ROOT / row["history_files"][0]).is_file()
+ assert doc["curation_history"][-1]["llm_assisted"] is True
diff --git a/tests/test_participating_taxa.py b/tests/test_participating_taxa.py
index f8e5e69ec..a00489388 100644
--- a/tests/test_participating_taxa.py
+++ b/tests/test_participating_taxa.py
@@ -294,6 +294,8 @@ def test_a_curie_is_ambiguous_where_members_share_an_id(example):
"Iberian_Pit_Lake_Stratified_Community.yaml",
"Industrial_Bioreactor_Consortium.yaml",
"Industrial_Milk_Line_FourSpecies_Model_Biofilm.yaml",
+ "Infant_Gut_DNA_Phage_Succession_Community.yaml",
+ "Infant_Gut_Prebiotic_Response_SynCom.yaml",
"Infant_Gut_Strain_Persistence_Maternal_Community.yaml",
"Legume_Rhizobia_Mars_Simulant_Symbiosis.yaml",
"Lunar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml",