From 19f27f1cc4f7c1fa4cd8c1ef0a10c28d0dc23a8f Mon Sep 17 00:00:00 2001 From: "marcin p. joachimiak" <4625870+realmarcin@users.noreply.github.com> Date: Tue, 6 Oct 2026 04:22:15 -0700 Subject: [PATCH] Bound fucoidan, GENIA and Transwell assay graphs --- ...n_Seven_Degrader_Combinatorial_SynCom.html | 109 ++- ..._MultiPollutant_Bioremediation_SynCom.html | 278 ++++-- .../GLBRC_Exometabolite_Transwell_SynCom.html | 123 +-- .../2026-10-06T110348Z-codex-5b5854.yaml | 27 + .../2026-10-06T110349Z-codex-2abd02.yaml | 28 + .../2026-10-06T110349Z-codex-80fddf.yaml | 27 + ...n_Seven_Degrader_Combinatorial_SynCom.yaml | 181 +++- ..._MultiPollutant_Bioremediation_SynCom.yaml | 272 ++++-- .../GLBRC_Exometabolite_Transwell_SynCom.yaml | 98 +- reports/causal_graph_review/README.md | 34 + .../adversarial-review-20261006-batch42.yaml | 188 ++++ .../20261006-three-records-batch42.yaml | 681 ++++++++++++++ reports/causal_graph_review/inventory.tsv | 6 +- ...validator-correction-20261006-batch42.json | 657 ++++++++++++++ reports/causal_graph_review/summary.json | 10 +- .../validation-20261006-batch42.json | 845 ++++++++++++++++++ tests/test_causal_review_batch42.py | 178 ++++ tests/test_participating_taxa.py | 2 + 18 files changed, 3412 insertions(+), 332 deletions(-) create mode 100644 history/records/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml create mode 100644 history/records/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom/2026-10-06T110349Z-codex-2abd02.yaml create mode 100644 history/records/GLBRC_Exometabolite_Transwell_SynCom/2026-10-06T110349Z-codex-80fddf.yaml create mode 100644 reports/causal_graph_review/README.md create mode 100644 reports/causal_graph_review/adversarial-review-20261006-batch42.yaml create mode 100644 reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml create mode 100644 reports/causal_graph_review/reference-validator-correction-20261006-batch42.json create mode 100644 reports/causal_graph_review/validation-20261006-batch42.json create mode 100644 tests/test_causal_review_batch42.py diff --git a/docs/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.html b/docs/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.html index 7acee00f8..621048c02 100644 --- a/docs/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.html +++ b/docs/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.html @@ -1033,11 +1033,29 @@

Ecological Interactions

Complementary fucoidan monomer degradation

-

The SynCom's community-level degradation emerges from combining fucose specialists, rare-sugar specialists, and generalists whose enzyme repertoires unlock distinct fractions of the sulfated F. vesiculosus fucoidan substrate.

+

Across the seven-degrader panel, V4/V25 preferentially degrade fucose, F12/F40/F94 rare sugars, and V69/F56 act as generalists. Genomic predictions were compared with experimental LC-MS monomer depletion. Monomer degradation combines cleavage of fucoidan-bound sugars and uptake, not measured CO2 mineralization. Cell-free residual-fucoidan and purified-enzyme assays support complementary substrate accessibility without requiring contact or small-molecule cross-feeding. Six of nine tested soluble enzymes had detectable activity; this does not establish each enzyme as necessary in every community. Participants identify the panel, not seven obligatory partners in every assay. G88 and the algal substrate producer are not members.

+

Participating Taxa: + + Algibacter sp. AS12, + + Algibacter lectus AS40, + + Mariniflexile sp. AS56, + + Zobellia laminariae AS94, + + Luteolibacter sp. AS25, + + Roseibacillus persicicus AS69, + + Lentimonas sp. CC4 + +

+ @@ -1066,7 +1084,7 @@

Evidence

PMID:42649294 - - SUPPORT (COMPUTATIONAL) + - SUPPORT (IN_VITRO)
"V69 and F56 function as generalists, whereas V4, V25 and G88 are fucose-specialists and F12, F40 and F94 are rare-sugar specialists."
@@ -1094,10 +1112,28 @@

Evidence

Seven-degrader synergistic function landscape

-

The complete non-empty panel of seven fucoidan degraders produced a smooth community-function landscape in which synergism remained common even among combinations approaching nearly complete degradation.

+

All 127 nonempty combinations of the seven listed degraders were assayed, not a single invariant seven-member community. The reported maximum 97.1% monomer degradation occurred in the five-member F40/F56/V69/F94/V4 subset. Functional synergism, reported for 80% of interactions relative to the resource-partitioning null, is distinct from reciprocal fitness benefit; pairwise outcomes include commensalism, amensalism and competition. The mutualistic V69/G88 pair lies outside this panel. Initial OD600 was 0.01 per strain, so total inoculum varied with richness. These endpoint assays do not isolate a richness-only effect or establish ocean carbon-sequestration rates. The model is fitted prediction, not independent enzyme-necessity evidence.

+ + + +

Participating Taxa: + Algibacter sp. AS12, + Algibacter lectus AS40, + + Mariniflexile sp. AS56, + + Zobellia laminariae AS94, + + Luteolibacter sp. AS25, + + Roseibacillus persicicus AS69, + + Lentimonas sp. CC4 + +

@@ -1224,7 +1260,7 @@

Associated Datasets

-

Knowledge gaps & discussions (2)

+

Knowledge gaps & discussions (3)

@@ -1279,10 +1315,10 @@

KNOWLEDGE_GAP - OPEN + RESOLVED Does the article's prose label for Lentimonas sp. CC4 resolve to V4 or V43?

-

Supplementary Table 2 maps LCC_4 to Lentimonas sp. CC4, Verruco4, and V4, and the full-combinatorial Methods use V4. One article paragraph refers to the previously characterized CC4 degrader as strain V43, so this record follows the spreadsheet and Methods convention for the member code.

+

Publisher HTML inspected on 2026-10-06 shows V4 immediately followed by a superscript link to reference 3, not strain V43. The selected-text cache flattened this citation into V43. Table 2 selected rows and combinatorial Methods consistently use V4 for Lentimonas sp. CC4. Preserve the historical question and original cache, but do not treat the rendering artifact as a biological alias. The decision ledger retains the source HTML hash and exact DOM fragment.

Attaches to: taxonomy#Lentimonas sp. CC4

@@ -1324,6 +1360,21 @@

+

+ +
+

+ KNOWLEDGE_GAP + OPEN + How should complementary substrate accessibility connect to panel-level degradation without overstating partner benefit? +

+

Full public primary main body and Methods read. Cell-free residual substrate and six active purified enzymes support complementary accessibility; no universal contact requirement, small-molecule exchange or reciprocal benefit follows. Depletion combines cleavage and uptake, not CO2 mineralization. Preserve the five-member maximum, G88 exclusion, variable total inoculum and experimental/model distinction. The Results describe fitting one-, two- and three-member communities while Methods more generally reference the 127-community data; code and raw data were not audited, so no independent train/test verification is claimed. New structure is pending #1465 after the one-community Edison dry run; specific credit authorization requested, no job or spend. Two corrected existing nodes and zero arrows are not a completed causal expansion. Figure images and original supplements were not inspected.

+ +

Attaches to: ecological_interactions#Complementary fucoidan monomer degradation, ecological_interactions#Seven-degrader synergistic function landscape

+ + + +

@@ -1668,6 +1719,29 @@

Evidence

+ var participantKeys = [ + + "Algibacter sp. AS12", + + "Algibacter lectus AS40", + + "Mariniflexile sp. AS56", + + "Zobellia laminariae AS94", + + "Luteolibacter sp. AS25", + + "Roseibacillus persicicus AS69", + + "Lentimonas sp. CC4" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { @@ -1696,6 +1770,29 @@

Evidence

+ var participantKeys = [ + + "Algibacter sp. AS12", + + "Algibacter lectus AS40", + + "Mariniflexile sp. AS56", + + "Zobellia laminariae AS94", + + "Luteolibacter sp. AS25", + + "Roseibacillus persicicus AS69", + + "Lentimonas sp. CC4" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); diff --git a/docs/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.html b/docs/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.html index ce8515733..4705f5465 100644 --- a/docs/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.html +++ b/docs/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.html @@ -877,7 +877,7 @@

Ecological Interactions

Ecological interaction network for GENIA Nine-Member Multi-Pollutant Bioremediation SynCom - Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction (mutualism, niche partitioning). + Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction.
@@ -885,13 +885,8 @@

Ecological Interactions

Mutualism -
-
- Niche partitioning + aria-hidden="true" data-symbol="symbolTriangle2" + data-color="#929caa"> Other
@@ -899,14 +894,34 @@

Ecological Interactions

-

GENIA Multipollutant Assembly

- NICHE_PARTITIONING +

Predicted GENIA Metabolic Complementarity

-

GENIA integrated pollutant-growth phenotypes and whole-genome annotations to assemble a community with complementary lignin, atrazine, and PFAS degradation potential across hub and specialist strains. -

+

HYPOTHESIZED: Genome annotations and computational network models predict complementary degradation potential across nine selected members, including five predicted generalists and four specialists. Agreement between GENIA and iNAP is computational cross-validation, not measured interspecies metabolite transfer, active expression or catalytic necessity. Growth-screen fluorescence does not independently establish pollutant degradation. The assembly workflow is not itself a biological cause of the measured removal phenotype; no design-to-removal arrow is retained.

+ + + + +

Participating Taxa: + + Atlantibacter hermannii, + + Bacillus cabrialesii, + Bacillus licheniformis, + Bacillus pseudomycoides, + Micrococcus luteus, + + Paenibacillus polymyxa, + + Pantoea dispersa, + + Pseudomonas fulva, + + Pseudomonas pergaminensis + +

@@ -928,35 +943,7 @@

GENIA Multipollutant Assembly

-

Biological Processes:

- - - - -
- Downstream Effects: - -
- → Liquid Multipollutant Degradation -

The genome-informed community architecture yielded synergistic PFOS, atrazine, and lignin removal in minimal medium. -

-
-
@@ -969,7 +956,7 @@

Evidence

PMID:42036878 - - SUPPORT (IN_VITRO) + - PARTIAL (COMPUTATIONAL)
"Functional classification based on genomic capacity identified two ecological roles: 5 generalist strains (55.6% of consortium) possessing enzymatic capacity across all three pollutant classes @@ -983,14 +970,34 @@

Evidence

-

Liquid Multipollutant Degradation

- MUTUALISM +

Reported GENIA Liquid Pollutant Removal

-

The assembled nine-member SynCom degraded lignin, atrazine, and PFOS in M9 minimal-medium assays at levels greater than the best individually assayed member. -

+

The source reports consortium removal above the best assayed monoculture: PFOS 93.1%, atrazine 91.4% and lignin 91.6% in the separate treatment comparisons. A distinct seven-day mixed-pollutant experiment reports PFOS 87.1%, atrazine 84.7% and lignin 88.9%; do not substitute the higher figures for this mixture. LC-MS/MS loss and lignin UV-visible changes are community-level endpoints, not proof of reciprocal member benefit, assigned cross-feeding or complete carbon mineralization. The paper reports fluoride and intermediates, but its PFOS fluorine denominator and atrazine nitrogen/method descriptions conflict; removal is retained as source-reported, not independent certification of defluorination efficiency or complete mineralization. Supplements and raw data were not audited.

+ + + + +

Participating Taxa: + Atlantibacter hermannii, + Bacillus cabrialesii, + Bacillus licheniformis, + + Bacillus pseudomycoides, + + Micrococcus luteus, + + Paenibacillus polymyxa, + + Pantoea dispersa, + + Pseudomonas fulva, + + Pseudomonas pergaminensis + +

@@ -1050,20 +1057,53 @@

Evidence

+
  • +
    + + PMID:42036878 + + - SUPPORT (IN_VITRO) +
    + +
    "yielded 84.7 ± 2.3% atrazine, 87.1 ± 3.6% PFOS, and 88.9 ± 2.9% lignin removal after 7 days"
    + +
  • +
    -

    Community Stability During Degradation

    - NICHE_PARTITIONING +

    GENIA DNA Composition and Ratio-Management Comparison

    -

    Full-length 16S rRNA tracking over the seven-day degradation assay showed that all nine inoculated strains persisted, with the predicted Paenibacillus polymyxa and Pseudomonas pergaminensis hub strains increasing in relative abundance while specialist strains remained detectable. -

    +

    Full-length 16S rRNA gene profiles track relative DNA composition during removal; predicted hub taxa increased in relative abundance and other inoculated taxa remained detectable. These measurements do not establish absolute viable persistence, member-resolved flux or hub necessity. The source also compares self-organizing communities with daily dilution/remixing to equal ratios, reporting lower PFOS and atrazine removal in the remixed condition; the lignin comparison had p=0.092. PARTIAL: this treatment comparison supports a composition-management association with performance, but does not isolate a particular taxon, metabolite or persistence-mediated pathway from the handling intervention.

    + + + + +

    Participating Taxa: + + Atlantibacter hermannii, + + Bacillus cabrialesii, + + Bacillus licheniformis, + Bacillus pseudomycoides, + Micrococcus luteus, + Paenibacillus polymyxa, + + Pantoea dispersa, + + Pseudomonas fulva, + + Pseudomonas pergaminensis + +

    @@ -1075,9 +1115,8 @@

    Community Stability During Degradation

    Downstream Effects:
    - → Liquid Multipollutant Degradation -

    Persistence of the complete inoculated roster maintained the multispecies degradation network during the pollutant-removal time course. -

    + → Reported GENIA Liquid Pollutant Removal +

    PARTIAL: Allowing composition to reorganize was associated with greater PFOS and atrazine removal than daily equal-ratio dilution/remixing. This reported intervention supports a bounded community-management effect, not selective proof that persistence or a particular cross-feeding network causes removal. Dilution/remixing changes handling as well as ratios; the reported lignin difference was not significant at p<0.05.

    @@ -1115,6 +1154,19 @@

    Evidence

    +
  • +
    + + PMID:42036878 + + - PARTIAL (IN_VITRO) +
    + +
    "Comparison of self-organizing community dynamics vs artificially maintained equal ratios"
    + +
  • +
    @@ -1160,6 +1212,25 @@

    Associated Datasets

    +
    +

    Knowledge gaps & discussions (1)

    + +
    +

    + KNOWLEDGE_GAP + OPEN + Which mechanisms and quantitative balances can be established independently of the GENIA predictions? +

    +

    Retain reported removal and relative DNA profiles, not mutualism, measured handoffs or necessary hubs. The daily equal-ratio intervention supports only PARTIAL management-level causality because handling and composition change together; lignin p=0.092. A PFOS-only inventory at the stated 37.1 micromolar gives approximately 12.0 mg/L fluorine, not the alternatively stated 64.08 mg/L. Methods also mention a PFOA/PFOS mixture, so the true denominator needs treatment-specific reconciliation rather than a blanket impossibility claim. Atrazine concentrations, nitrogen yield and Nessler versus indophenol methods also conflict. Source-reported fluoride/intermediates are not ignored, but no efficiency or complete-mineralization certification follows. Raw data and supplements were not inspected; follow-up #1468 remains open. Existing graph corrections address #1466 without new structure or provider spend.

    + +

    Attaches to: ecological_interactions#Predicted GENIA Metabolic Complementarity, ecological_interactions#Reported GENIA Liquid Pollutant Removal, ecological_interactions#GENIA DNA Composition and Ratio-Management Comparison

    + + + + +
    + +
    @@ -1665,7 +1736,7 @@

    Evidence

    (function() { var intId = "interaction:0"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1678,17 +1749,11 @@

    Evidence

    var processes = []; - - processes.push("lignin catabolic process"); - - processes.push("xenobiotic metabolic process"); - - var evidenceCount = 1; nodes.push({ id: intId, - label: "GENIA Multipollutant Assembly", + label: "Predicted GENIA Metabolic Complementarity", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1699,11 +1764,38 @@

    Evidence

    + var participantKeys = [ + + "Atlantibacter hermannii", + + "Bacillus cabrialesii", + + "Bacillus licheniformis", + + "Bacillus pseudomycoides", + + "Micrococcus luteus", + + "Paenibacillus polymyxa", + + "Pantoea dispersa", + + "Pseudomonas fulva", + + "Pseudomonas pergaminensis" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:1"; - var intType = "MUTUALISM"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1722,11 +1814,11 @@

    Evidence

    processes.push("xenobiotic metabolic process"); - var evidenceCount = 1; + var evidenceCount = 2; nodes.push({ id: intId, - label: "Liquid Multipollutant Degradation", + label: "Reported GENIA Liquid Pollutant Removal", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1737,20 +1829,47 @@

    Evidence

    + var participantKeys = [ + + "Atlantibacter hermannii", + + "Bacillus cabrialesii", + + "Bacillus licheniformis", + + "Bacillus pseudomycoides", + + "Micrococcus luteus", + + "Paenibacillus polymyxa", + + "Pantoea dispersa", + + "Pseudomonas fulva", + + "Pseudomonas pergaminensis" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:2"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; - var evidenceCount = 2; + var evidenceCount = 3; nodes.push({ id: intId, - label: "Community Stability During Degradation", + label: "GENIA DNA Composition and Ratio-Management Comparison", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1761,6 +1880,33 @@

    Evidence

    + var participantKeys = [ + + "Atlantibacter hermannii", + + "Bacillus cabrialesii", + + "Bacillus licheniformis", + + "Bacillus pseudomycoides", + + "Micrococcus luteus", + + "Paenibacillus polymyxa", + + "Pantoea dispersa", + + "Pseudomonas fulva", + + "Pseudomonas pergaminensis" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); diff --git a/docs/communities/GLBRC_Exometabolite_Transwell_SynCom.html b/docs/communities/GLBRC_Exometabolite_Transwell_SynCom.html index b23893c17..de59189a8 100644 --- a/docs/communities/GLBRC_Exometabolite_Transwell_SynCom.html +++ b/docs/communities/GLBRC_Exometabolite_Transwell_SynCom.html @@ -531,72 +531,11 @@

    Ecological Interactions

    -
    -
    -

    Exometabolite-Mediated Interaction

    -
    -

    Community members interact chemically through small molecules, extracellular enzymes, and antibiotics in shared medium.

    - - - - - - -

    Metabolites: - - N-acyl-L-homoserine lactone - (CHEBI:55474), - - antibacterial agent - (CHEBI:33282) - -

    - - - -

    Biological Processes:

    - - - - - - -

    Evidence

    - - -
    -

    AHL Diffusion and Violacein Induction

    -

    Chromobacterium violaceum Cv017 produces acyl-homoserine lactones that diffuse through the Transwell reservoir and induce quorum sensing, vioC transcription, and violacein production in the physically separated Cv026 biosensor. -

    +

    In the two-strain reporter demonstration, AHL-producing Cv017 induced violacein and vioC transcription in physically separated Cv026 through the shared reservoir. Replated Cv026 returned to a nonpigmented phenotype, supporting signal-dependent response rather than contamination or a stable pigmented mutant. This supports diffusible signaling in this assay, not a quantified signal dose, all extracellular enzyme classes or causation of the separate three-member metabolomics phenotype. The canonical record currently has only a Bacteria umbrella; exact strain participants remain unresolved rather than being assigned invented CURIEs.

    @@ -652,8 +591,7 @@

    Evidence

    Three-Member Exometabolite Time Series

    -

    A stationary-phase Burkholderia thailandensis, Chromobacterium violaceum and Pseudomonas syringae Transwell community produced a reproducible nonpolar exometabolite profile in which mass features were depleted, produced de novo, or enriched at early and mid time points. -

    +

    The separate B. thailandensis E264, source-labeled C. violaceum and P. syringae DC3000 stationary-phase assay showed time-varying nonpolar mass features over 15-35 hours. The 977 features are not 977 identified metabolites, and changes do not resolve producer-consumer flux. Bactobolin was identified separately by polar HILIC-MS/MS; its accumulation does not selectively establish the cause of lower P. syringae live-cell counts in B. thailandensis-containing cultures. No bactobolin-to-inhibition or AHL-to-metabolomics arrow is asserted. The source has a Chromobacterium strain-number discrepancy; taxonomy and a separately supported antagonism node remain pending under #1467.

    @@ -699,6 +637,25 @@

    Evidence

    +
    +

    Knowledge gaps & discussions (1)

    + +
    +

    + KNOWLEDGE_GAP + OPEN + Which strain-resolved antagonism belongs alongside the separate Transwell demonstrations? +

    +

    The platform-capability umbrella node is removed; prior workflow-arrow pruning remains intact. The AHL reporter pair and three-member stationary-phase series are distinct experiments. The full primary body supports lower P. syringae live-cell counts with B. thailandensis, but bactobolin accumulation is not selective mediator necessity. New antagonism structure and exact canonical members remain pending #1467; Bacteria/NCBITaxon:2 must not become invented species participants or a self-edge. The source uses SC11,368 in prose versus SC11,378/ATCC31532 in its strain table. One-community Edison dry run completed; specific credit authorization requested, no job or spend. Metadata still conflates test-tube versus Transwell cultivation and different assay media; those preserved fields are not certified. Main body, table text and captions read, not figure images, separate supplements or raw spectra.

    + +

    Attaches to: ecological_interactions#AHL Diffusion and Violacein Induction, ecological_interactions#Three-Member Exometabolite Time Series

    + + + + +
    + +
    @@ -904,40 +861,6 @@

    Evidence

    var metabolites = []; - metabolites.push("N-acyl-L-homoserine lactone"); - - metabolites.push("antibacterial agent"); - - - var processes = []; - - - processes.push("quorum sensing"); - - - var evidenceCount = 1; - - nodes.push({ - id: intId, - label: "Exometabolite-Mediated Interaction", - type: "interaction", - interactionType: intType, - metabolites: metabolites, - processes: processes, - evidenceCount: evidenceCount - }); - - - - - })(); - - (function() { - var intId = "interaction:1"; - var intType = "UNKNOWN"; - var metabolites = []; - - metabolites.push("N-acyl-L-homoserine lactone"); @@ -965,7 +888,7 @@

    Evidence

    })(); (function() { - var intId = "interaction:2"; + var intId = "interaction:1"; var intType = "UNKNOWN"; var metabolites = []; @@ -1011,7 +934,7 @@

    Evidence

    var svg = d3.select("#network-svg"); var width = container.clientWidth - 32; // Dynamic height based on node count: minimum 500px, add 40px per node - var nodeCount = 4; + var nodeCount = 3; var height = Math.max(500, 400 + nodeCount * 20); svg.attr("width", width).attr("height", height); diff --git a/history/records/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml b/history/records/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml new file mode 100644 index 000000000..d633cc6c6 --- /dev/null +++ b/history/records/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml @@ -0,0 +1,27 @@ +history_version: 1 +target: + kind: record + path: kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml + slug: Fucoidan_Seven_Degrader_Combinatorial_SynCom +session: + id: 2026-10-06T110348Z-codex-5b5854 + timestamp: '2026-10-06T11:03:48Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1465 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Retain experimentally supported monomer specialization with canonical panel participants + and accessibility/measurement limits.; Retain the combinatorial functional landscape, + five-member maximum and null-model comparison without blanket mutualism. + details: Existing-graph corrections; new structure remains pending where explicitly marked. + reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml diff --git a/history/records/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom/2026-10-06T110349Z-codex-2abd02.yaml b/history/records/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom/2026-10-06T110349Z-codex-2abd02.yaml new file mode 100644 index 000000000..dd4a40c98 --- /dev/null +++ b/history/records/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom/2026-10-06T110349Z-codex-2abd02.yaml @@ -0,0 +1,28 @@ +history_version: 1 +target: + kind: record + path: kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml + slug: GENIA_NineMember_MultiPollutant_Bioremediation_SynCom +session: + id: 2026-10-06T110349Z-codex-2abd02 + timestamp: '2026-10-06T11:03:49Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1466 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Retain computational complementarity as a hypothesis and remove the workflow-to-removal + arrow.; Retain distinct reported removal endpoints without mutualism, assigned flux or + certified mineralization.; Retain DNA composition and the bounded daily-ratio intervention; + qualify its existing removal arrow as PARTIAL. + details: Existing-graph corrections; new structure remains pending where explicitly marked. + reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml diff --git a/history/records/GLBRC_Exometabolite_Transwell_SynCom/2026-10-06T110349Z-codex-80fddf.yaml b/history/records/GLBRC_Exometabolite_Transwell_SynCom/2026-10-06T110349Z-codex-80fddf.yaml new file mode 100644 index 000000000..0ef5a17ec --- /dev/null +++ b/history/records/GLBRC_Exometabolite_Transwell_SynCom/2026-10-06T110349Z-codex-80fddf.yaml @@ -0,0 +1,27 @@ +history_version: 1 +target: + kind: record + path: kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml + slug: GLBRC_Exometabolite_Transwell_SynCom +session: + id: 2026-10-06T110349Z-codex-80fddf + timestamp: '2026-10-06T11:03:49Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1467 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Retain the bounded Cv017/Cv026 diffusible reporter response without invented canonical + strain endpoints.; Retain nonpolar time-series observations, distinguishing polar bactobolin + and live-cell counts from resolved causal mediation. + details: Existing-graph corrections; new structure remains pending where explicitly marked. + reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml diff --git a/kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml b/kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml index 5bdf7ffc3..ae7e4534f 100644 --- a/kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml +++ b/kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml @@ -340,8 +340,13 @@ taxonomy: explanation: Supports the fucose-specialist role of V4 and V25. ecological_interactions: - name: Complementary fucoidan monomer degradation - description: The SynCom's community-level degradation emerges from combining fucose specialists, rare-sugar specialists, - and generalists whose enzyme repertoires unlock distinct fractions of the sulfated F. vesiculosus fucoidan substrate. + description: Across the seven-degrader panel, V4/V25 preferentially degrade fucose, F12/F40/F94 rare sugars, and + V69/F56 act as generalists. Genomic predictions were compared with experimental LC-MS monomer depletion. Monomer + degradation combines cleavage of fucoidan-bound sugars and uptake, not measured CO2 mineralization. Cell-free + residual-fucoidan and purified-enzyme assays support complementary substrate accessibility without requiring + contact or small-molecule cross-feeding. Six of nine tested soluble enzymes had detectable activity; this does + not establish each enzyme as necessary in every community. Participants identify the panel, not seven obligatory + partners in every assay. G88 and the algal substrate producer are not members. scope: COMMUNITY_LEVEL biological_processes: - preferred_term: carbohydrate catabolic process @@ -351,19 +356,55 @@ ecological_interactions: evidence: - reference: PMID:42649294 supports: SUPPORT - evidence_source: COMPUTATIONAL - snippet: V69 and F56 function as generalists, whereas V4, V25 and G88 are fucose-specialists and F12, F40 and F94 are - rare-sugar specialists. - explanation: Supports division of the isolated degraders into fucose specialists, rare-sugar specialists, and generalists. + evidence_source: IN_VITRO + snippet: V69 and F56 function as generalists, whereas V4, V25 and G88 are fucose-specialists and F12, F40 and + F94 are rare-sugar specialists. + explanation: The primary Results place this classification after LC-MS validation of genomic predictions. G88 + appears in the broader isolate experiment, but is explicitly excluded from the canonical seven-degrader panel. - reference: PMID:42649294 supports: SUPPORT evidence_source: IN_VITRO - snippet: access to complementary substrate fractions--rather than enzyme count--limits fucoidan degradation, such that complete - breakdown emerges from interactions among metabolically complementary degraders. - explanation: Supports the source article's mechanism for community-level fucoidan breakdown. + snippet: access to complementary substrate fractions--rather than enzyme count--limits fucoidan degradation, + such that complete breakdown emerges from interactions among metabolically complementary degraders. + explanation: Supports the authors' complementary-accessibility interpretation; inspected full-body residual-substrate + and enzyme assays add mechanistic support, not obligatory small-molecule exchange or mineralization. + participating_taxa: + - preferred_term: Algibacter sp. AS12 + term: + id: NCBITaxon:3135773 + label: Algibacter sp. AS12 + - preferred_term: Algibacter lectus AS40 + term: + id: NCBITaxon:221126 + label: Algibacter lectus + - preferred_term: Mariniflexile sp. AS56 + term: + id: NCBITaxon:3063957 + label: Mariniflexile sp. AS56 + - preferred_term: Zobellia laminariae AS94 + term: + id: NCBITaxon:248906 + label: Zobellia laminariae + - preferred_term: Luteolibacter sp. AS25 + term: + id: NCBITaxon:3135776 + label: Luteolibacter sp. AS25 + - preferred_term: Roseibacillus persicicus AS69 + term: + id: NCBITaxon:454148 + label: Roseibacillus persicicus + - preferred_term: Lentimonas sp. CC4 + term: + id: NCBITaxon:2676099 + label: Lentimonas sp. CC4 - name: Seven-degrader synergistic function landscape - description: The complete non-empty panel of seven fucoidan degraders produced a smooth community-function landscape in - which synergism remained common even among combinations approaching nearly complete degradation. + description: All 127 nonempty combinations of the seven listed degraders were assayed, not a single invariant + seven-member community. The reported maximum 97.1% monomer degradation occurred in the five-member F40/F56/V69/F94/V4 + subset. Functional synergism, reported for 80% of interactions relative to the resource-partitioning null, is + distinct from reciprocal fitness benefit; pairwise outcomes include commensalism, amensalism and competition. + The mutualistic V69/G88 pair lies outside this panel. Initial OD600 was 0.01 per strain, so total inoculum varied + with richness. These endpoint assays do not isolate a richness-only effect or establish ocean carbon-sequestration + rates. The model is fitted prediction, not independent enzyme-necessity evidence. scope: COMMUNITY_LEVEL biological_processes: - preferred_term: carbohydrate catabolic process @@ -374,15 +415,46 @@ ecological_interactions: - reference: PMID:42649294 supports: SUPPORT evidence_source: IN_VITRO - snippet: Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community - F40, F56, V69, F94 and V4 - explanation: Supports the observed degradation range across the seven-member composition landscape. + snippet: Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member + community F40, F56, V69, F94 and V4 + explanation: Supports the five-member maximum within the complete 127-combination panel; not the performance + of every seven-member inoculum. - reference: PMID:42649294 supports: SUPPORT evidence_source: COMPUTATIONAL - snippet: even when approaching near-complete degradation, 80% of interactions were still synergistic beyond what would be expected - from simple resource partitioning - explanation: Supports persistence of synergism across high-degradation communities. + snippet: even when approaching near-complete degradation, 80% of interactions were still synergistic beyond + what would be expected from simple resource partitioning + explanation: A model-relative functional comparison derived from experimental endpoints, not proof of mutualistic + population effects or complete carbon mineralization. + participating_taxa: + - preferred_term: Algibacter sp. AS12 + term: + id: NCBITaxon:3135773 + label: Algibacter sp. AS12 + - preferred_term: Algibacter lectus AS40 + term: + id: NCBITaxon:221126 + label: Algibacter lectus + - preferred_term: Mariniflexile sp. AS56 + term: + id: NCBITaxon:3063957 + label: Mariniflexile sp. AS56 + - preferred_term: Zobellia laminariae AS94 + term: + id: NCBITaxon:248906 + label: Zobellia laminariae + - preferred_term: Luteolibacter sp. AS25 + term: + id: NCBITaxon:3135776 + label: Luteolibacter sp. AS25 + - preferred_term: Roseibacillus persicicus AS69 + term: + id: NCBITaxon:454148 + label: Roseibacillus persicicus + - preferred_term: Lentimonas sp. CC4 + term: + id: NCBITaxon:2676099 + label: Lentimonas sp. CC4 growth_media: - name: MBL medium with 0.2% Fucus vesiculosus fucoidan incubation_time: '5' @@ -498,21 +570,24 @@ external_resources: explanation: Links the code for isolate-distribution and metagenomic analyses. discussions: - discussion_id: g88_excluded_from_full_combinatorial_panel - prompt: Should the context-dependent Pseudocolwellia degrader G88/AS88 be represented in a companion pairwise-coculture record? + prompt: Should the context-dependent Pseudocolwellia degrader G88/AS88 be represented in a companion pairwise-coculture + record? kind: KNOWLEDGE_GAP status: OPEN attaches_to: - engineering_design - ecological_interactions#Seven-degrader synergistic function landscape - rationale: G88 was an experimentally validated fucoidan degrader from the same strain collection, but the full 127-community - landscape explicitly excluded G88 and used the seven degraders F12, F40, F56, F94, V25, V69, and V4. + rationale: G88 was an experimentally validated fucoidan degrader from the same strain collection, but the full + 127-community landscape explicitly excluded G88 and used the seven degraders F12, F40, F56, F94, V25, V69, and + V4. evidence: - reference: PMID:42649294 supports: SUPPORT evidence_source: IN_VITRO - snippet: The only exception was G88, which increased degradation when paired with V69, but acted as an exploiter when paired - with V4 and V25. - explanation: Supports treating G88 as pairwise context-dependent instead of silently adding it to the seven-degrader panel. + snippet: The only exception was G88, which increased degradation when paired with V69, but acted as an exploiter + when paired with V4 and V25. + explanation: Supports treating G88 as pairwise context-dependent instead of silently adding it to the seven-degrader + panel. - reference: PMID:42649294 supports: SUPPORT evidence_source: IN_VITRO @@ -523,12 +598,14 @@ discussions: - discussion_id: v4_lentimonas_alias prompt: Does the article's prose label for Lentimonas sp. CC4 resolve to V4 or V43? kind: KNOWLEDGE_GAP - status: OPEN + status: RESOLVED attaches_to: - taxonomy#Lentimonas sp. CC4 - rationale: Supplementary Table 2 maps LCC_4 to Lentimonas sp. CC4, Verruco4, and V4, and the full-combinatorial Methods - use V4. One article paragraph refers to the previously characterized CC4 degrader as strain V43, so this record follows - the spreadsheet and Methods convention for the member code. + rationale: Publisher HTML inspected on 2026-10-06 shows V4 immediately followed by a superscript link to reference + 3, not strain V43. The selected-text cache flattened this citation into V43. Table 2 selected rows and combinatorial + Methods consistently use V4 for Lentimonas sp. CC4. Preserve the historical question and original cache, but + do not treat the rendering artifact as a biological alias. The decision ledger retains the source HTML hash + and exact DOM fragment. evidence: - reference: PMID:42649294 supports: SUPPORT @@ -542,6 +619,25 @@ discussions: explanation: Supports the V4 code in the full-combinatorial Methods section. posed_by: codex posed_date: '2026-09-27' +- discussion_id: fucoidan_causal_expansion_and_measurement_scope + prompt: How should complementary substrate accessibility connect to panel-level degradation without overstating + partner benefit? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Complementary fucoidan monomer degradation + - ecological_interactions#Seven-degrader synergistic function landscape + rationale: 'Full public primary main body and Methods read. Cell-free residual substrate and six active purified + enzymes support complementary accessibility; no universal contact requirement, small-molecule exchange or reciprocal + benefit follows. Depletion combines cleavage and uptake, not CO2 mineralization. Preserve the five-member maximum, + G88 exclusion, variable total inoculum and experimental/model distinction. The Results describe fitting one-, + two- and three-member communities while Methods more generally reference the 127-community data; code and raw + data were not audited, so no independent train/test verification is claimed. New structure is pending #1465 + after the one-community Edison dry run; specific credit authorization requested, no job or spend. Two corrected + existing nodes and zero arrows are not a completed causal expansion. Figure images and original supplements + were not inspected.' + posed_by: codex + posed_date: '2026-10-06' metals_present: [] rare_earth_elements_present: [] metal_relevance: NOT_APPLICABLE @@ -551,29 +647,34 @@ curation_history: - timestamp: '2026-09-27T10:50:32Z' curator: codex action: CREATE_COMMUNITY_RECORD - changes: Created PMID:42649294-backed seven-degrader fucoidan SynCom record with all 127 non-empty combinations, isolate - accessions from Supplementary Table 2, complementary fucose and rare-sugar degradation, MBL plus fucoidan growth medium, - external data/code resources, and explicit discussions for G88 exclusion and the V4/Lentimonas alias. + changes: Created PMID:42649294-backed seven-degrader fucoidan SynCom record with all 127 non-empty combinations, + isolate accessions from Supplementary Table 2, complementary fucose and rare-sugar degradation, MBL plus fucoidan + growth medium, external data/code resources, and explicit discussions for G88 exclusion and the V4/Lentimonas + alias. llm_assisted: true - timestamp: '2026-09-27T11:05:47Z' curator: codex action: ADD_GTDB_STATUS_PLACEHOLDERS - changes: >- - Added explicit NOT_ATTEMPTED GTDB grounding statuses to all seven bacterial taxon descriptors for issue #1144; the - local NCBI2GTDB crosswalk was unavailable, so no gtdb_classification blocks were asserted. + changes: 'Added explicit NOT_ATTEMPTED GTDB grounding statuses to all seven bacterial taxon descriptors for issue + #1144; the local NCBI2GTDB crosswalk was unavailable, so no gtdb_classification blocks were asserted.' llm_assisted: true - timestamp: '2026-09-27T11:08:23Z' curator: codex action: ADDRESS_ADVERSARIAL_REVIEW_FINDINGS - changes: >- - Added a structured counter-selection for excluded G88/Pseudocolwellia sp. AS88 for issue #1146 and moved PRJNA996876, - the Panorama Public LC-MS DOI, and the Zenodo record into associated_datasets for issue #1145. + changes: 'Added a structured counter-selection for excluded G88/Pseudocolwellia sp. AS88 for issue #1146 and moved + PRJNA996876, the Panorama Public LC-MS DOI, and the Zenodo record into associated_datasets for issue #1145.' llm_assisted: true - timestamp: '2026-09-27T11:14:50Z' curator: codex action: TRIAGE_GTDB_STATUS_PLACEHOLDERS - changes: >- - Replaced the seven issue #1144 NOT_ATTEMPTED placeholders with UNRESOLVED after adversarial review found that - NOT_ATTEMPTED is reserved for the otherwise-empty outstanding-work bucket. The local NCBI2GTDB crosswalk remained - unavailable, so no gtdb_classification blocks were asserted. + changes: 'Replaced the seven issue #1144 NOT_ATTEMPTED placeholders with UNRESOLVED after adversarial review found + that NOT_ATTEMPTED is reserved for the otherwise-empty outstanding-work bucket. The local NCBI2GTDB crosswalk + remained unavailable, so no gtdb_classification blocks were asserted.' + llm_assisted: true +- timestamp: '2026-10-06T11:03:46Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Retain experimentally supported monomer specialization with canonical panel participants and accessibility/measurement + limits.; Retain the combinatorial functional landscape, five-member maximum and null-model comparison without + blanket mutualism. Issue #1465; reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml' llm_assisted: true diff --git a/kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml b/kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml index 4d6e29968..be575118d 100644 --- a/kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml +++ b/kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml @@ -266,12 +266,13 @@ taxonomy: Names Pseudomonas pergaminensis as one of the nine members of the GENIA-designed multipollutant-degrading community. ecological_interactions: -- name: GENIA Multipollutant Assembly - description: > - GENIA integrated pollutant-growth phenotypes and whole-genome annotations to - assemble a community with complementary lignin, atrazine, and PFAS - degradation potential across hub and specialist strains. - interaction_type: NICHE_PARTITIONING +- name: Predicted GENIA Metabolic Complementarity + description: 'HYPOTHESIZED: Genome annotations and computational network models predict complementary degradation + potential across nine selected members, including five predicted generalists and four specialists. Agreement + between GENIA and iNAP is computational cross-validation, not measured interspecies metabolite transfer, active + expression or catalytic necessity. Growth-screen fluorescence does not independently establish pollutant degradation. + The assembly workflow is not itself a biological cause of the measured removal phenotype; no design-to-removal + arrow is retained.' scope: COMMUNITY_LEVEL metabolites: - preferred_term: lignin @@ -286,37 +287,62 @@ ecological_interactions: term: id: CHEBI:39421 label: perfluorooctane-1-sulfonic acid - biological_processes: - - preferred_term: lignin catabolic process - term: - id: GO:0046274 - label: lignin catabolic process - - preferred_term: xenobiotic metabolic process - term: - id: GO:0006805 - label: xenobiotic metabolic process - downstream: - - target: Liquid Multipollutant Degradation - description: > - The genome-informed community architecture yielded synergistic PFOS, - atrazine, and lignin removal in minimal medium. evidence: - reference: PMID:42036878 - supports: SUPPORT - evidence_source: IN_VITRO - snippet: > - Functional classification based on genomic capacity identified two - ecological roles: 5 generalist strains (55.6% of consortium) possessing - enzymatic capacity across all three pollutant classes - explanation: > - Supports role partitioning across generalist and specialist members of the - GENIA community. -- name: Liquid Multipollutant Degradation - description: > - The assembled nine-member SynCom degraded lignin, atrazine, and PFOS in M9 - minimal-medium assays at levels greater than the best individually assayed - member. - interaction_type: MUTUALISM + supports: PARTIAL + evidence_source: COMPUTATIONAL + snippet: 'Functional classification based on genomic capacity identified two ecological roles: 5 generalist + strains (55.6% of consortium) possessing enzymatic capacity across all three pollutant classes + + ' + explanation: Supports classification based on genomic capacity, not experimentally resolved resource partitioning, + metabolite transfer or a causal contribution of each member. + participating_taxa: + - preferred_term: Atlantibacter hermannii + term: + id: NCBITaxon:565 + label: Atlantibacter hermannii + - preferred_term: Bacillus cabrialesii + term: + id: NCBITaxon:2487276 + label: Bacillus cabrialesii + - preferred_term: Bacillus licheniformis + term: + id: NCBITaxon:1402 + label: Bacillus licheniformis + - preferred_term: Bacillus pseudomycoides + term: + id: NCBITaxon:64104 + label: Bacillus pseudomycoides + - preferred_term: Micrococcus luteus + term: + id: NCBITaxon:1270 + label: Micrococcus luteus + - preferred_term: Paenibacillus polymyxa + term: + id: NCBITaxon:1406 + label: Paenibacillus polymyxa + - preferred_term: Pantoea dispersa + term: + id: NCBITaxon:59814 + label: Pantoea dispersa + - preferred_term: Pseudomonas fulva + term: + id: NCBITaxon:47880 + label: Pseudomonas fulva + - preferred_term: Pseudomonas pergaminensis + term: + id: NCBITaxon:2853159 + label: Pseudomonas pergaminensis +- name: Reported GENIA Liquid Pollutant Removal + description: 'The source reports consortium removal above the best assayed monoculture: PFOS 93.1%, atrazine 91.4% + and lignin 91.6% in the separate treatment comparisons. A distinct seven-day mixed-pollutant experiment reports + PFOS 87.1%, atrazine 84.7% and lignin 88.9%; do not substitute the higher figures for this mixture. LC-MS/MS + loss and lignin UV-visible changes are community-level endpoints, not proof of reciprocal member benefit, assigned + cross-feeding or complete carbon mineralization. The paper reports fluoride and intermediates, but its PFOS + fluorine denominator and atrazine nitrogen/method descriptions conflict; removal is retained as source-reported, + not independent certification of defluorination efficiency or complete mineralization. Supplements and raw data + were not audited.' scope: COMMUNITY_LEVEL metabolites: - preferred_term: lignin @@ -344,46 +370,131 @@ ecological_interactions: - reference: PMID:42036878 supports: SUPPORT evidence_source: IN_VITRO - snippet: > - The 9-member consortium achieved 93.1% PFOS removal (2.23-fold improvement - over best individual), 91.4% atrazine removal (1.47-fold), and 91.6% lignin - removal (1.46-fold). - explanation: > - Quantifies emergent community-scale pollutant removal beyond the - strongest monoculture benchmarks. -- name: Community Stability During Degradation - description: > - Full-length 16S rRNA tracking over the seven-day degradation assay showed - that all nine inoculated strains persisted, with the predicted Paenibacillus - polymyxa and Pseudomonas pergaminensis hub strains increasing in relative - abundance while specialist strains remained detectable. - interaction_type: NICHE_PARTITIONING + snippet: 'The 9-member consortium achieved 93.1% PFOS removal (2.23-fold improvement over best individual), + 91.4% atrazine removal (1.47-fold), and 91.6% lignin removal (1.46-fold). + + ' + explanation: Source-reported separate-treatment comparison, not mutualism or the lower mixed-pollutant outcomes; + mass-balance contradictions prevent adopting complete-mineralization claims. + - reference: PMID:42036878 + supports: SUPPORT + evidence_source: IN_VITRO + snippet: yielded 84.7 ± 2.3% atrazine, 87.1 ± 3.6% PFOS, and 88.9 ± 2.9% lignin removal after 7 days + explanation: The separately reported mixed-pollutant experiment has different endpoints; do not import the higher + separate-treatment figures. + participating_taxa: + - preferred_term: Atlantibacter hermannii + term: + id: NCBITaxon:565 + label: Atlantibacter hermannii + - preferred_term: Bacillus cabrialesii + term: + id: NCBITaxon:2487276 + label: Bacillus cabrialesii + - preferred_term: Bacillus licheniformis + term: + id: NCBITaxon:1402 + label: Bacillus licheniformis + - preferred_term: Bacillus pseudomycoides + term: + id: NCBITaxon:64104 + label: Bacillus pseudomycoides + - preferred_term: Micrococcus luteus + term: + id: NCBITaxon:1270 + label: Micrococcus luteus + - preferred_term: Paenibacillus polymyxa + term: + id: NCBITaxon:1406 + label: Paenibacillus polymyxa + - preferred_term: Pantoea dispersa + term: + id: NCBITaxon:59814 + label: Pantoea dispersa + - preferred_term: Pseudomonas fulva + term: + id: NCBITaxon:47880 + label: Pseudomonas fulva + - preferred_term: Pseudomonas pergaminensis + term: + id: NCBITaxon:2853159 + label: Pseudomonas pergaminensis +- name: GENIA DNA Composition and Ratio-Management Comparison + description: 'Full-length 16S rRNA gene profiles track relative DNA composition during removal; predicted hub + taxa increased in relative abundance and other inoculated taxa remained detectable. These measurements do not + establish absolute viable persistence, member-resolved flux or hub necessity. The source also compares self-organizing + communities with daily dilution/remixing to equal ratios, reporting lower PFOS and atrazine removal in the remixed + condition; the lignin comparison had p=0.092. PARTIAL: this treatment comparison supports a composition-management + association with performance, but does not isolate a particular taxon, metabolite or persistence-mediated pathway + from the handling intervention.' scope: COMMUNITY_LEVEL downstream: - - target: Liquid Multipollutant Degradation - description: > - Persistence of the complete inoculated roster maintained the multispecies - degradation network during the pollutant-removal time course. + - target: Reported GENIA Liquid Pollutant Removal + description: 'PARTIAL: Allowing composition to reorganize was associated with greater PFOS and atrazine removal + than daily equal-ratio dilution/remixing. This reported intervention supports a bounded community-management + effect, not selective proof that persistence or a particular cross-feeding network causes removal. Dilution/remixing + changes handling as well as ratios; the reported lignin difference was not significant at p<0.05.' evidence: - reference: PMID:42036878 supports: SUPPORT evidence_source: IN_VITRO - snippet: > - Hub strains showed predicted expansion: P. polymyxa increased from 11.1% - (day 0) to 14.2% (day 3) to 15.6% (day 7), representing a 40.5% relative - increase - explanation: > - Supports molecular tracking of predicted hub-strain dynamics during the - degradation assay. + snippet: 'Hub strains showed predicted expansion: P. polymyxa increased from 11.1% (day 0) to 14.2% (day 3) + to 15.6% (day 7), representing a 40.5% relative increase + + ' + explanation: Supports source-reported relative DNA composition, not absolute viable abundance or selective causal + mediation. - reference: PMID:42036878 supports: SUPPORT evidence_source: IN_VITRO - snippet: > - Critically, no invasive taxa (noninoculated strains) exceeded 1% relative - abundance at any time point - explanation: > - Supports persistence of the defined community without takeover by - contaminating noninoculated strains. + snippet: 'Critically, no invasive taxa (noninoculated strains) exceeded 1% relative abundance at any time point + + ' + explanation: Supports source-reported relative DNA composition, not absolute viable abundance or selective causal + mediation. + - reference: PMID:42036878 + supports: PARTIAL + evidence_source: IN_VITRO + snippet: Comparison of self-organizing community dynamics vs artificially maintained equal ratios + explanation: The primary Results describe daily dilution/remixing with pollutant-specific comparisons; supports + only the qualified treatment-level arrow. + participating_taxa: + - preferred_term: Atlantibacter hermannii + term: + id: NCBITaxon:565 + label: Atlantibacter hermannii + - preferred_term: Bacillus cabrialesii + term: + id: NCBITaxon:2487276 + label: Bacillus cabrialesii + - preferred_term: Bacillus licheniformis + term: + id: NCBITaxon:1402 + label: Bacillus licheniformis + - preferred_term: Bacillus pseudomycoides + term: + id: NCBITaxon:64104 + label: Bacillus pseudomycoides + - preferred_term: Micrococcus luteus + term: + id: NCBITaxon:1270 + label: Micrococcus luteus + - preferred_term: Paenibacillus polymyxa + term: + id: NCBITaxon:1406 + label: Paenibacillus polymyxa + - preferred_term: Pantoea dispersa + term: + id: NCBITaxon:59814 + label: Pantoea dispersa + - preferred_term: Pseudomonas fulva + term: + id: NCBITaxon:47880 + label: Pseudomonas fulva + - preferred_term: Pseudomonas pergaminensis + term: + id: NCBITaxon:2853159 + label: Pseudomonas pergaminensis environmental_factors: - name: Liquid-culture PFOS removal value: 93.1% removal within 7 days @@ -638,3 +749,32 @@ associated_datasets: explanation: > Links the published genome and 16S sequence data to BioProject PRJNA1370521. +discussions: +- discussion_id: genia_flux_mass_balance_and_intervention_scope + prompt: Which mechanisms and quantitative balances can be established independently of the GENIA predictions? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Predicted GENIA Metabolic Complementarity + - ecological_interactions#Reported GENIA Liquid Pollutant Removal + - ecological_interactions#GENIA DNA Composition and Ratio-Management Comparison + rationale: 'Retain reported removal and relative DNA profiles, not mutualism, measured handoffs or necessary hubs. + The daily equal-ratio intervention supports only PARTIAL management-level causality because handling and composition + change together; lignin p=0.092. A PFOS-only inventory at the stated 37.1 micromolar gives approximately 12.0 + mg/L fluorine, not the alternatively stated 64.08 mg/L. Methods also mention a PFOA/PFOS mixture, so the true + denominator needs treatment-specific reconciliation rather than a blanket impossibility claim. Atrazine concentrations, + nitrogen yield and Nessler versus indophenol methods also conflict. Source-reported fluoride/intermediates are + not ignored, but no efficiency or complete-mineralization certification follows. Raw data and supplements were + not inspected; follow-up #1468 remains open. Existing graph corrections address #1466 without new structure + or provider spend.' + posed_by: codex + posed_date: '2026-10-06' +curation_history: +- timestamp: '2026-10-06T11:03:47Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Retain computational complementarity as a hypothesis and remove the workflow-to-removal arrow.; Retain + distinct reported removal endpoints without mutualism, assigned flux or certified mineralization.; Retain DNA + composition and the bounded daily-ratio intervention; qualify its existing removal arrow as PARTIAL. Issue #1466; + reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml' + llm_assisted: true diff --git a/kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml b/kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml index 0788c50b6..cd5b27633 100644 --- a/kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml +++ b/kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml @@ -51,33 +51,13 @@ taxonomy: evidence: - *id001 ecological_interactions: -- name: Exometabolite-Mediated Interaction - description: Community members interact chemically through small molecules, extracellular enzymes, and - antibiotics in shared medium. - scope: COMMUNITY_LEVEL - metabolites: - - preferred_term: N-acyl-L-homoserine lactone - term: - id: CHEBI:55474 - label: N-acyl-L-homoserine lactone - notes: AHLs were the diffusible quorum-sensing molecules used in the Cv017-Cv026 reporter assay. - - preferred_term: antibacterial agent - term: - id: CHEBI:33282 - label: antibacterial agent - notes: Antibiotics are one exometabolite class assayed from the shared reservoir. - biological_processes: - - preferred_term: quorum sensing - term: - id: GO:0009372 - label: quorum sensing - evidence: - - *id001 - name: AHL Diffusion and Violacein Induction - description: > - Chromobacterium violaceum Cv017 produces acyl-homoserine lactones that diffuse through the - Transwell reservoir and induce quorum sensing, vioC transcription, and violacein production in - the physically separated Cv026 biosensor. + description: In the two-strain reporter demonstration, AHL-producing Cv017 induced violacein and vioC transcription + in physically separated Cv026 through the shared reservoir. Replated Cv026 returned to a nonpigmented phenotype, + supporting signal-dependent response rather than contamination or a stable pigmented mutant. This supports diffusible + signaling in this assay, not a quantified signal dose, all extracellular enzyme classes or causation of the + separate three-member metabolomics phenotype. The canonical record currently has only a Bacteria umbrella; exact + strain participants remain unresolved rather than being assigned invented CURIEs. scope: COMMUNITY_LEVEL metabolites: - preferred_term: N-acyl-L-homoserine lactone @@ -93,32 +73,32 @@ ecological_interactions: - reference: PMID:29152587 supports: SUPPORT evidence_source: IN_VITRO - snippet: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein - production in Cv026 - explanation: > - Demonstrates that a diffusible AHL signal moved across the filter-plate reservoir and activated - the Cv026 quorum-sensing biosensor. + snippet: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production in Cv026 + explanation: Supports the two-strain reporter response across the reservoir; endpoint transcription and replating + controls are described in the inspected main body. It is separate from the three-member time series. - name: Three-Member Exometabolite Time Series - description: > - A stationary-phase Burkholderia thailandensis, Chromobacterium violaceum and Pseudomonas syringae - Transwell community produced a reproducible nonpolar exometabolite profile in which mass features - were depleted, produced de novo, or enriched at early and mid time points. + description: 'The separate B. thailandensis E264, source-labeled C. violaceum and P. syringae DC3000 stationary-phase + assay showed time-varying nonpolar mass features over 15-35 hours. The 977 features are not 977 identified metabolites, + and changes do not resolve producer-consumer flux. Bactobolin was identified separately by polar HILIC-MS/MS; + its accumulation does not selectively establish the cause of lower P. syringae live-cell counts in B. thailandensis-containing + cultures. No bactobolin-to-inhibition or AHL-to-metabolomics arrow is asserted. The source has a Chromobacterium + strain-number discrepancy; taxonomy and a separately supported antagonism node remain pending under #1467.' scope: COMMUNITY_LEVEL metabolites: - preferred_term: antibacterial agent term: id: CHEBI:33282 label: antibacterial agent - notes: Bactobolin was identified as an accumulated antibacterial feature in the three-member assay. + notes: Bactobolin identified separately in the polar HILIC-MS/MS analysis; not an identity assignment for all + 977 nonpolar features or selective proof of inhibition mediation. evidence: - reference: PMID:29152587 supports: SUPPORT evidence_source: IN_VITRO - snippet: We observed both decreases in existing features (clusters A and B) and production of - new features over time (clusters D, E, and F) - explanation: > - Supports time-resolved exometabolite depletion and production in the physically separated - three-member demonstration community. + snippet: We observed both decreases in existing features (clusters A and B) and production of new features over + time (clusters D, E, and F) + explanation: Supports temporal mass-feature differences, not resolved exchange flux or mediator-specific causality. + The polar bactobolin measurement and live-cell counts are distinct readouts. related_ingredients: - preferred_term: N-acyl-L-homoserine lactone chebi_term: @@ -180,9 +160,35 @@ curation_history: - timestamp: '2026-10-02T05:52:18Z' curator: codex action: PRUNE_CAUSAL_GRAPH_WORKFLOW_EDGES - changes: > - Removed two downstream edges from the umbrella exometabolite-mediated - interaction node to the AHL reporter and three-member exometabolite - time-series demonstrations because they represented assay examples rather - than causal transitions between ecological interactions. + changes: 'Removed two downstream edges from the umbrella exometabolite-mediated interaction node to the AHL reporter + and three-member exometabolite time-series demonstrations because they represented assay examples rather than + causal transitions between ecological interactions. + + ' + llm_assisted: true +- timestamp: '2026-10-06T11:03:47Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Retain the bounded Cv017/Cv026 diffusible reporter response without invented canonical strain endpoints.; + Retain nonpolar time-series observations, distinguishing polar bactobolin and live-cell counts from resolved + causal mediation. Issue #1467; reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml' llm_assisted: true +discussions: +- discussion_id: transwell_assay_roster_and_antagonism + prompt: Which strain-resolved antagonism belongs alongside the separate Transwell demonstrations? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#AHL Diffusion and Violacein Induction + - ecological_interactions#Three-Member Exometabolite Time Series + rationale: 'The platform-capability umbrella node is removed; prior workflow-arrow pruning remains intact. The + AHL reporter pair and three-member stationary-phase series are distinct experiments. The full primary body supports + lower P. syringae live-cell counts with B. thailandensis, but bactobolin accumulation is not selective mediator + necessity. New antagonism structure and exact canonical members remain pending #1467; Bacteria/NCBITaxon:2 must + not become invented species participants or a self-edge. The source uses SC11,368 in prose versus SC11,378/ATCC31532 + in its strain table. One-community Edison dry run completed; specific credit authorization requested, no job + or spend. Metadata still conflates test-tube versus Transwell cultivation and different assay media; those preserved + fields are not certified. Main body, table text and captions read, not figure images, separate supplements or + raw spectra.' + posed_by: codex + posed_date: '2026-10-06' diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md new file mode 100644 index 000000000..5cc7e7fbb --- /dev/null +++ b/reports/causal_graph_review/README.md @@ -0,0 +1,34 @@ +# Causal Graph Review Records + +Each batch retains a decision ledger, validation outputs and an explicitly +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`. + +## Reference-Validator Correction (2026-10-06) + +Some historical batch reports incorrectly interpret `Total checks: 0` as zero +executed checks or a no-op. **That interpretation is withdrawn.** In installed +`linkml-reference-validator` 0.1.7, this CLI counter is the number of reported +validation issues. A zero means no issues reported, not that no snippets were checked. + +[Correction receipt](reference-validator-correction-20261006-batch42.json) preserves +the installed-code evidence, passing positive/negative canaries, baseline failure +comparison and an ignored/hidden-inclusive inventory of candidate historical +statements. Historical raw outputs remain unchanged. Candidate text matches include +correct negations and are not all errors. See [issue 1469](https://github.com/CultureBotAI/CommunityMech/issues/1469). + +The validator still has coverage limits: `SupportingReference` discovery is tracked +in [issue 476](https://github.com/CultureBotAI/CommunityMech/issues/476). The installed +fetcher does not combine supplement sidecars with the article cache. Batch42's +Fucoidan record therefore has 14 unchanged taxonomy-snippet findings, reproduced at +the pre-edit head; those snippets match its separate supplement sidecar. This is +an actual reference-CLI failure, not a pass or independent verification of the +original spreadsheet. No supplemental text was copied into the article cache. +The separate snippet auditor reports 35 matches and 15 mismatches for Fucoidan: +the same 14 taxonomy excerpts plus one discussion excerpt. Its output also matches +the baseline exactly; its exit code of zero does not mean an all-match result. + +Textual matching also does not establish scientific support or independent source +provenance. In particular, selected `.txt` excerpts have a separate trust limitation +tracked in [issue 1362](https://github.com/CultureBotAI/CommunityMech/issues/1362). diff --git a/reports/causal_graph_review/adversarial-review-20261006-batch42.yaml b/reports/causal_graph_review/adversarial-review-20261006-batch42.yaml new file mode 100644 index 000000000..645f144a8 --- /dev/null +++ b/reports/causal_graph_review/adversarial-review-20261006-batch42.yaml @@ -0,0 +1,188 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: 12c0771525564259d767ae1a98265d069a45d1e4 +scope: +- kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml +- kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml +- kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml +decision_ledger: reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml +validation_report: reports/causal_graph_review/validation-20261006-batch42.json +findings: +- issue: 1465 + severity: P2 + status: open_graph_research + finding: 'Fucoidan graph: bound combinatorial outcomes and curate complementary-enzyme causal structure' + disposition: Existing nodes corrected, but new structure remains needs_research. Dry run only, specific + authorization requested, no provider spend. +- issue: 1466 + severity: P2 + status: addressed_in_this_change + finding: 'GENIA graph: separate predicted complementarity, reported removal and compositional intervention' + disposition: Existing graph corrected; close only after protected main merge. +- issue: 1467 + severity: P2 + status: open_graph_research + finding: 'Transwell graph: remove platform umbrella and resolve assay-specific members before expansion' + disposition: Existing nodes corrected, but new structure remains needs_research. Dry run only, specific + authorization requested, no provider spend. +- issue: 1468 + severity: P2 + status: open_evidence_and_nongraph_followup + finding: 'GENIA evidence follow-up: reconcile reported mass balances and non-graph mechanism claims' + disposition: Graph caveats added; source mass balances and non-graph fields remain unresolved, not certified. +- issue: 1469 + severity: P2 + status: addressed_in_this_change + finding: Historical review outputs misread the issue counter as a count of executed checks. + disposition: Prominent correction, installed-code receipt, five passing canaries, baseline failure comparison + and historical candidate inventory committed; historical raw outputs preserved. PR correction notices + are a publication step. +adversarial_checks: +- Whole records and all eight original nodes/two arrows reviewed. Seven nodes retained and one generic + platform node removed; one PARTIAL arrow retained and one workflow arrow removed. Three GENIA renames + and exact target/discussion anchors verified. No new structure. +- Fucoidan LC-MS specialization is experimental support for genomic predictions. Monomer depletion combines + cleavage and uptake, not measured carbon mineralization. Residual-substrate and purified-enzyme assays + support accessibility without obligatory contact/small-molecule exchange, not universal enzyme necessity. +- Fucoidan 97.1% is the five-member F40/F56/V69/F94/V4 result within all 127 combinations. The participants + are the panel, not obligatory simultaneous partners. Functional null-model synergism is not reciprocal + fitness benefit. G88 exclusion and its separate mutualistic V69 pair preserved; per-strain inoculum + means total input covaries with richness. +- Fucoidan full publisher DOM resolves V4 plus superscript citation 3; V43 is a text-extraction artifact, + not a distinct alias. Historical discussion retained as RESOLVED with DOM/hash receipt; original selected-excerpt + cache unchanged. Original supplementary spreadsheet and model code were not audited; no independent + train/test verification claimed. +- GENIA predicted roles and network agreement remain computational and HYPOTHESIZED. Remove design-to-removal + causality and unsupported MUTUALISM/NICHE_PARTITIONING. Preserve distinct separate-treatment versus + lower mixed-pollutant outcomes as source-reported observations, not independently certified mineralization. +- GENIA daily equal-ratio dilution/remixing is a reported intervention, so retain only its bounded PARTIAL + management-effect arrow. Handling and ratios change together; DNA profiles do not establish viable absolute + persistence, exact flux or hub necessity. Lignin p=0.092 is not a significant management comparison + at p<0.05. +- 'GENIA main text reports fluoride and intermediates but has conflicting fluorine/nitrogen inventories + and analytical-method descriptions. Arithmetic on stated inputs is preserved, not substituted for treatment-specific + raw-data reconciliation. PFOA/PFOS mixture scope prevents a blanket impossibility claim; no misconduct + allegation. #1468 stays open.' +- Transwell AHL reporter and three-member stationary-phase experiments remain separate. Remove generic + capability node without restoring earlier workflow arrows. Replating/endpoint transcription support + reporter response; 977 nonpolar features are not identified metabolite count or producer-consumer flux. + Polar bactobolin accumulation does not selectively establish inhibition mediation. +- 'Transwell lower P. syringae live-cell counts with B. thailandensis are a candidate for new bounded + structure, not a bactobolin arrow. Canonical Bacteria umbrella is not converted into invented species + participants or a self-edge. Exact reporter/three-member strain identities and source SC11,368/SC11,378 + discrepancy remain pending with media/test-tube metadata under #1467.' +- 'Fucoidan #1465 and Transwell #1467 remain needs_research. Separate one-community dry runs retained + verbatim with query hashes; specific credit authorization requested. No provider calls or credits. Existing-graph + corrections and gap discussions do not count as completed expansion.' +- 457 other records and all 920 reference-cache files unchanged. Canonical taxonomy, non-graph raw blocks, + existing curation events and prior history artifacts preserved. Participant registry grows only by the + two explicit canonical panels, 187 to 189; connectivity census and numeric bounds unchanged. All 33 + network warnings preserved with zero structural defects. +- Repeat rendering deterministic; exact published descriptions checked across all 456 pages. Nine new + regression tests plus combined suite passed on recorded bytes. No browser screenshot, original supplemental-table, + raw-data or figure-image review claimed. Primary main bodies and Methods read for all three, with public + access/cached source scopes explicit. +- The initial reference gate failed with 14 Fucoidan taxonomy findings. Identical failure reproduced on + untouched baseline; every snippet matches the supplement sidecar which the installed fetcher does not + combine with article text. A second batch-helper failure exposed 15 unchanged snippet-audit mismatches + (the same taxonomy plus a discussion excerpt), also reproduced byte-for-byte at baseline. Preserve both + failures, do not manufacture a clean/all-MATCH pass or merge supplemental text into the article cache. +- 'Historical no-op interpretation of Total checks: 0 is withdrawn under #1469. Installed CLI counts reported + issues; five existing positive/negative/field-discovery canaries pass. SupportingReference #476 and + selected-excerpt trust #1362 remain open. The separate snippet audit MATCH is textual, not scientific + proof or independent provenance. Actual outputs, failure archive, source digests and pre-paper baseline + retained; original historical reports remain byte-identical.' +- 'Dedup covered 783 all-state issue bodies plus ignored/hidden local files, all 17 biological matches + read. Follow-up diagnosis read #257/#466/#476/#783/#785/#827; new #1469 is a reporting regression, not + duplicate reopening of the CLI diagnosis. Not every comment/PR review was inspected.' +- This is source-based self-adversarial review, not independent approval, protected merge or full-corpus + completion. Existing issue corrections remain open until main merge; research and source-evidence followups + remain open afterward. +verification: + combined_regressions: 440 passed in 203.92s (0:03:23) + new_regression_tests: 9 + schema_strict_terms_history: passed; actual outputs and digests retained + references: Fucoidan exits 1 with 14 unchanged supplement-sidecar findings; GENIA/Transwell exit 0. + Not all reference checks pass. + snippet_counts_by_record: + kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml: + MATCH: 35 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 15 + NOCONTENT: 0 + kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml: + MATCH: 22 + RENDERING: 9 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml: + MATCH: 9 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + network: Zero errors; 33 baseline warnings exactly preserved, none added. + black_ruff_diff: passed + tested_file_sha256: + reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml: c0b2c349054635e9d6993082265669faede9e45656a6ae48549c87df053df645 + tests/test_causal_review_batch42.py: fb13bd5f9bb330039a84669fcede705b037515ce4897fbcb562616e6eed1a6a3 + tests/test_participating_taxa.py: 77a1f6e458a1ea58c2f00fc04d0d7f412944c75d9ef21920566e9873d89e475a + kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml: 61c3e21e1a830b7d0b3e2d3ee2fc7bc17ecc1724aa79414c106e04312c63f468 + kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml: 72fcc1720a4bb6b3a0a464f98524ab2bbf999b2b73eaf71efa0fa98be433b9c3 + kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml: 8d1ef9c4d9c8b8b0f2c203a984747b02cfa32e10fe648d3fd5bf0a9548c8208f + reports/causal_graph_review/README.md: 6db1c56cc36836b694fa92b3929ba296e8a7173169246c1c25e65255e6da90ed + reports/causal_graph_review/reference-validator-correction-20261006-batch42.json: 9718d69ee2c5f87c174b3bc8e8bf170f483ffd1b32c9ccd789ff96e9c041f2ab + post_commit_docs_current: Separate publication gate; not asserted in pre-commit record. + protected_ci_and_merge: Eligible exact-head checks and protected queue still required. +participant_census: + connectivity_before: + community_level_only: 263 + credited_solely_by_the_rule: 1219 + mixed: 124 + records: 460 + taxa: 1494 + with_community_level: 387 + connectivity_after: + community_level_only: 263 + credited_solely_by_the_rule: 1219 + mixed: 124 + records: 460 + taxa: 1494 + with_community_level: 387 + exact_change: 'Two canonical panel rosters added: 187 to 189 registered records. Transwell retains unresolved + Bacteria umbrella and needs_research. Connectivity census and numeric bounds unchanged; taxonomy preserved.' + numeric_bounds_changed: false +corpus: + records: 460 + nodes: 1468 + edges: 686 + review_status_counts: + needs_research: 12 + pending: 285 + reviewed: 163 +limitations: +- Three complete primary main bodies and Methods read, including text captions; no figure images, separate + supplements or raw analytical data independently inspected. Fucoidan cached Table 2 selected rows are + not original-spreadsheet verification. +- Seven existing nodes retained, one generic platform node removed; one PARTIAL management-effect arrow + retained and one workflow arrow removed. Three node renames. No new structure or provider spend. +- 'Fucoidan and Transwell remain needs_research. Corrected existing graphs and gap discussions are not + completed expansion; #1465/#1467 remain open.' +- 'Canonical taxonomy, prior history, original source caches and non-graph raw blocks preserved, not certified. + GENIA evidence/non-graph follow-up #1468 remains open; Transwell assay/roster follow-up included in + #1467.' +- V4 discussion resolved from publisher citation DOM; original cache rendering artifact preserved and + explicitly disclosed, not recast as a biological alias. +- Source-based self-adversarial review is not independent approval, protected merge or full-corpus completion. + Reference-validator 0.1.7 reports issue counts as Total checks, not executed-check counts. Fucoidan + has 14 unchanged supplementary-taxonomy findings; the other records must be evaluated separately. SupportingReference + field discovery remains incomplete under issue 476. Snippet matching is textual, not scientific validation. + Reporting correction is tracked by issue 1469. +- Edison dry runs emitted a remote cost-map warning and used a local fallback; no API job or price estimate + was supplied. diff --git a/reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml b/reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml new file mode 100644 index 000000000..30710e90f --- /dev/null +++ b/reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml @@ -0,0 +1,681 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: 12c0771525564259d767ae1a98265d069a45d1e4 +baseline_commit: 12c0771525564259d767ae1a98265d069a45d1e4 +base_tree: d6664ec28961715038f08b1565bcbffc98383a50 +issues: +- 1466 +open_nongraph_followups: +- 1468 +open_graph_research: +- 1465 +- 1467 +issue_deduplication: + all_state_issue_titles_and_bodies: 783 + ignored_hidden_local_search: true + relevant_bodies_read: + - 1347 + - 1248 + - 1147 + - 1146 + - 1145 + - 1144 + - 817 + - 813 + - 812 + - 624 + - 543 + - 524 + - 486 + - 326 + - 312 + - 17 + - 12 + exact_identifier_search_additional_matches: 0 + limitations: Not all issue comments or PR reviews inspected. +reference_cache_original_hashes: + references_cache/PMID_42649294.txt: ea0c737a5ae104f6e65b7a2224929e4e120d412fdb5bce531bca9c3a2061ebc8 + references_cache/PMID_42649294.supplement.md: a3b7db48ee4097692c3833ed377c0914e138161ca37a27ec6b15b9bb8d50a26c + references_cache/PMID_42036878.txt: ba601b28daa48780d6b338cfd69ed9aa65ab60c8824a086a13a041350c988acd + references_cache/PMID_29152587.txt: 2e773cfbd68cb0dde8b53d5f97ed3576433fc0bea771e916ab08836828c75f73 +edison: +- community: Fucoidan_Seven_Degrader_Combinatorial_SynCom + dryrun_meta_sha256: d9430a62ac20a1a78c662337e4db37e9d1b0e10da5a3dda08c935506101ab37d + dryrun_meta: + slug: Fucoidan_Seven_Degrader_Combinatorial_SynCom + community_path: kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml + community_id: CommunityMech:000449 + job: LITERATURE + job_id: job-futurehouse-paperqa3 + label: causal + template_path: templates/community_causal_graph_research.md + template_vars: + community_name: Fucoidan Seven-Degrader Combinatorial SynCom + community_id: CommunityMech:000449 + community_file: Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml + community_slug: Fucoidan_Seven_Degrader_Combinatorial_SynCom + community_category: BIOTECHNOLOGY + ecological_state: ENGINEERED + community_origin: SYNTHETIC + description: A defined seven-member marine bacterial SynCom assembled from the fucoidan degraders F12, F40, + F56, F94, V25, V69, and V4 to quantify complementary fucose- and rare-sugar-monomer degradation of Fucus + vesiculosus fucoidan. Sichert et al. constructed all 127 possible non-empty combinations of these degraders + at equal OD600 in MBL medium with 0.2% fucoidan, measured total and monomer-specific degradation by liquid + chromatography mass spectrometry, and resolved a functionally synergistic community landscape in which specialized + degrader combinations reached up to 97.1% total degradation. + source_summary: '' + environment_summary: laboratory environment | ENVO:01001405 | The curated entity is a defined laboratory SynCom + grown on purified brown-algal fucoidan in MBL medium. + taxonomy_summary: Algibacter sp. AS12 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F12; rare-sugar + specialist. | Algibacter lectus AS40 (Algibacter lectus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom + member F40; rare-sugar specialist and member of the highest-degradation five-strain community. | Mariniflexile + sp. AS56 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F56; generalist and member of the highest-degradation + five-strain community. | Zobellia laminariae AS94 (Zobellia laminariae) - PRIMARY_DEGRADER - Equal-OD seven-degrader + SynCom member F94; rare-sugar specialist and member of the highest-degradation five-strain community. | + Luteolibacter sp. AS25 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V25; fucose specialist. + | Roseibacillus persicicus AS69 (Roseibacillus persicicus) - PRIMARY_DEGRADER - Equal-OD seven-degrader + SynCom member V69; generalist and member of the highest-degradation five-strain community. | Lentimonas + sp. CC4 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V4; fucose specialist and member of the + highest-degradation five-strain community. + interaction_summary: Complementary fucoidan monomer degradation - The SynCom's community-level degradation + emerges from combining fucose specialists, rare-sugar specialists, and generalists whose enzyme repertoires + unlock distinct fractions of the sulfated F. vesiculosus fucoidan substrate. | Seven-degrader synergistic + function landscape - The complete non-empty panel of seven fucoidan degraders produced a smooth community-function + landscape in which synergism remained common even among combinations approaching nearly complete degradation. + environmental_factor_summary: '' + growth_media_summary: MBL medium with 0.2% Fucus vesiculosus fucoidan - Seven-degrader combinations were inoculated + at equal OD600 into MBL medium with 0.2% w/v Fucus vesiculosus fucoidan as the sole carbon source before + five-day endpoint degradation analysis. + dataset_summary: PRJNA996876 - https://www.ncbi.nlm.nih.gov/bioproject/PRJNA996876 | doi:10.6069/r2z3-7b10 + - https://doi.org/10.6069/r2z3-7b10 | zenodo.19591477 - https://zenodo.org/records/19591477 | Nature article + DOI - doi:10.1038/s41586-026-10980-z - https://doi.org/10.1038/s41586-026-10980-z | Sichert2025_Fucoidan + GitHub workflow - EnvSysMicroLAB/Sichert2025_Fucoidan - https://github.com/EnvSysMicroLAB/Sichert2025_Fucoidan + | Global ocean fucoidan-degrader GitHub analysis - tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis + - https://github.com/tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis + evidence_summary: 'PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, + we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4, + along with a no-cell negative control. (Names the seven strains and the complete non-empty combinatorial + panel.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) + at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v) fucoidan from F. vesiculosus + as the sole carbon source. (Supports the equal-OD inoculation strategy and the MBL plus F. vesiculosus fucoidan + medium.) | PMID:42649294: Total degradation increased with community richness, ranging from 4% to a maximum + of 97.1% in the 5-member community F40, F56, V69, F94 and V4 (Supports the measured upper end of the community-function + landscape.) | PMID:42649294: The only exception was G88, which increased degradation when paired with V69, + but acted as an exploiter when paired with V4 and V25. (Supports G88 as a context-dependent degrader that + was not carried into the seven-degrader full-combinatorial design.) | PMID:42649294: To systematically evaluate + synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven + degraders F12, F40, F56, F94, V25, V69 and V4 (Names the exact full-combinatorial panel, excluding G88 from + the seven strains retained for the 127-community experiment.) | PMID:42649294: We isolated 5 exploiters, + 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and + four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F12 as one of the Flavobacteriia fucoidan + degraders.) | PMID:42649294: isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1 (Supports + the assembly accession for isolate_12.) | PMID:42649294: Algibacter_B amylolyticus AS12 | Flavo12 | F12 + | degrader (Maps isolate_12 to the F12 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 + are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: + We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), + G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F40 as one + of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_40 | 99.67 | 0.71 | high-quality draft + | GCA_046736305.1 (Supports the assembly accession for isolate_40.) | PMID:42649294: Algibacter lectus AS40 + | Flavo40 | F40 | degrader (Maps isolate_40 to the F40 strain code and degrader role.) | PMID:42649294: + F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) + | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 + (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports + F56 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_56 | 99.67 | 1.96 | high-quality + draft | GCA_046736295.1 (Supports the assembly accession for isolate_56.) | PMID:42649294: Mariniflexile + sp. AS56 | Flavo56 | F56 | degrader (Maps isolate_56 to the F56 strain code and degrader role.) | PMID:42649294: + V69 and F56 function as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: We isolated + 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) + and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F94 as one of the Flavobacteriia + fucoidan degraders.) | PMID:42649294: isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1 (Supports + the assembly accession for isolate_94.) | PMID:42649294: Zobellia laminariae AS94 | Flavo94 | F94 | degrader + (Maps isolate_94 to the F94 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar + specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated + 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) + and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V25 as the Luteolibacter fucoidan + degrader.) | PMID:42649294: isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1 (Supports the + assembly accession for isolate_25.) | PMID:42649294: Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | + degrader (Maps isolate_25 to the V25 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are + fucose-specialists (Supports the fucose-specialist role of V4 and V25.) | PMID:42649294: We isolated 5 exploiters, + 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and + four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V69 as the Roseibacillus fucoidan + degrader.) | PMID:42649294: isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1 (Supports the + assembly accession for isolate_69.) | PMID:42649294: Roseibacillus_A persicicus AS69 | Verruco69 | V69 | + degrader (Maps isolate_69 to the V69 strain code and degrader role.) | PMID:42649294: V69 and F56 function + as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: To systematically evaluate + synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven + degraders F12, F40, F56, F94, V25, V69 and V4 (Supports V4 as one of the seven full-combinatorial degrader + members.) | PMID:42649294: LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1 (Supports the assembly + accession for LCC_4.) | PMID:42649294: Lentimonas sp. CC4 | Verruco4 | V4 | degrader (Maps LCC_4 to the + V4 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are fucose-specialists (Supports the + fucose-specialist role of V4 and V25.) | PMID:42649294: V69 and F56 function as generalists, whereas V4, + V25 and G88 are fucose-specialists and F12, F40 and F94 are rare-sugar specialists. (Supports division of + the isolated degraders into fucose specialists, rare-sugar specialists, and generalists.) | PMID:42649294: + access to complementary substrate fractions--rather than enzyme count--limits fucoidan degradation, such + that complete breakdown emerges from interactions among metabolically complementary degraders. (Supports + the source article''s mechanism for community-level fucoidan breakdown.) | PMID:42649294: Total degradation + increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community F40, + F56, V69, F94 and V4 (Supports the observed degradation range across the seven-member composition landscape.) + | PMID:42649294: even when approaching near-complete degradation, 80% of interactions were still synergistic + beyond what would be expected from simple resource partitioning (Supports persistence of synergism across + high-degradation communities.) | PMID:42649294: Each community was assembled by mixing strains at equal + optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v) + fucoidan from F. vesiculosus as the sole carbon source. (Supports medium identity, fucoidan concentration, + inoculation OD, and working volume.) | PMID:42649294: Cultures were incubated for 5 days (n = 3 biological + replicates), after which supernatants were collected for degradation analysis. (Supports the five-day triplicate + endpoint for the combinatorial panel.) | PMID:42649294: Each community was assembled by mixing strains at + equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium (Supports batch assembly + into 1.8 mL culture volumes.)' + query_chars: 15343 + query: "# Microbial Community Causal-Graph Research Template\n\n## Target Community\n- **Community name:** Fucoidan\ + \ Seven-Degrader Combinatorial SynCom\n- **Community id:** CommunityMech:000449\n- **Community file:** Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\n\ + - **Community category:** BIOTECHNOLOGY\n- **Ecological state:** ENGINEERED\n- **Community origin:** SYNTHETIC\n\ + - **Environment:** laboratory environment | ENVO:01001405 | The curated entity is a defined laboratory SynCom\ + \ grown on purified brown-algal fucoidan in MBL medium.\n- **Description:** A defined seven-member marine\ + \ bacterial SynCom assembled from the fucoidan degraders F12, F40, F56, F94, V25, V69, and V4 to quantify\ + \ complementary fucose- and rare-sugar-monomer degradation of Fucus vesiculosus fucoidan. Sichert et al. constructed\ + \ all 127 possible non-empty combinations of these degraders at equal OD600 in MBL medium with 0.2% fucoidan,\ + \ measured total and monomer-specific degradation by liquid chromatography mass spectrometry, and resolved\ + \ a functionally synergistic community landscape in which specialized degrader combinations reached up to\ + \ 97.1% total degradation.\n\n## Existing Record Context\n- **Taxa:** Algibacter sp. AS12 - PRIMARY_DEGRADER\ + \ - Equal-OD seven-degrader SynCom member F12; rare-sugar specialist. | Algibacter lectus AS40 (Algibacter\ + \ lectus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F40; rare-sugar specialist and member\ + \ of the highest-degradation five-strain community. | Mariniflexile sp. AS56 - PRIMARY_DEGRADER - Equal-OD\ + \ seven-degrader SynCom member F56; generalist and member of the highest-degradation five-strain community.\ + \ | Zobellia laminariae AS94 (Zobellia laminariae) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member\ + \ F94; rare-sugar specialist and member of the highest-degradation five-strain community. | Luteolibacter\ + \ sp. AS25 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V25; fucose specialist. | Roseibacillus\ + \ persicicus AS69 (Roseibacillus persicicus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V69;\ + \ generalist and member of the highest-degradation five-strain community. | Lentimonas sp. CC4 - PRIMARY_DEGRADER\ + \ - Equal-OD seven-degrader SynCom member V4; fucose specialist and member of the highest-degradation five-strain\ + \ community.\n- **Known ecological interactions:** Complementary fucoidan monomer degradation - The SynCom's\ + \ community-level degradation emerges from combining fucose specialists, rare-sugar specialists, and generalists\ + \ whose enzyme repertoires unlock distinct fractions of the sulfated F. vesiculosus fucoidan substrate. |\ + \ Seven-degrader synergistic function landscape - The complete non-empty panel of seven fucoidan degraders\ + \ produced a smooth community-function landscape in which synergism remained common even among combinations\ + \ approaching nearly complete degradation.\n- **Environmental factors:** \n- **Growth media / culture conditions:**\ + \ MBL medium with 0.2% Fucus vesiculosus fucoidan - Seven-degrader combinations were inoculated at equal OD600\ + \ into MBL medium with 0.2% w/v Fucus vesiculosus fucoidan as the sole carbon source before five-day endpoint\ + \ degradation analysis.\n- **Associated datasets / resources:** PRJNA996876 - https://www.ncbi.nlm.nih.gov/bioproject/PRJNA996876\ + \ | doi:10.6069/r2z3-7b10 - https://doi.org/10.6069/r2z3-7b10 | zenodo.19591477 - https://zenodo.org/records/19591477\ + \ | Nature article DOI - doi:10.1038/s41586-026-10980-z - https://doi.org/10.1038/s41586-026-10980-z | Sichert2025_Fucoidan\ + \ GitHub workflow - EnvSysMicroLAB/Sichert2025_Fucoidan - https://github.com/EnvSysMicroLAB/Sichert2025_Fucoidan\ + \ | Global ocean fucoidan-degrader GitHub analysis - tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis\ + \ - https://github.com/tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis\n- **Existing evidence:**\ + \ PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed\ + \ all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4, along with a no-cell\ + \ negative control. (Names the seven strains and the complete non-empty combinatorial panel.) | PMID:42649294:\ + \ Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating\ + \ into 1.8 ml of MBL medium supplemented with 0.2% (w/v) fucoidan from F. vesiculosus as the sole carbon source.\ + \ (Supports the equal-OD inoculation strategy and the MBL plus F. vesiculosus fucoidan medium.) | PMID:42649294:\ + \ Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member\ + \ community F40, F56, V69, F94 and V4 (Supports the measured upper end of the community-function landscape.)\ + \ | PMID:42649294: The only exception was G88, which increased degradation when paired with V69, but acted\ + \ as an exploiter when paired with V4 and V25. (Supports G88 as a context-dependent degrader that was not\ + \ carried into the seven-degrader full-combinatorial design.) | PMID:42649294: To systematically evaluate\ + \ synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven\ + \ degraders F12, F40, F56, F94, V25, V69 and V4 (Names the exact full-combinatorial panel, excluding G88 from\ + \ the seven strains retained for the 127-community experiment.) | PMID:42649294: We isolated 5 exploiters,\ + \ 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and\ + \ four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F12 as one of the Flavobacteriia fucoidan\ + \ degraders.) | PMID:42649294: isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1 (Supports\ + \ the assembly accession for isolate_12.) | PMID:42649294: Algibacter_B amylolyticus AS12 | Flavo12 | F12\ + \ | degrader (Maps isolate_12 to the F12 strain code and degrader role.) | PMID:42649294: F12, F40 and F94\ + \ are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294:\ + \ We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus),\ + \ G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F40 as one\ + \ of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_40 | 99.67 | 0.71 | high-quality draft\ + \ | GCA_046736305.1 (Supports the assembly accession for isolate_40.) | PMID:42649294: Algibacter lectus AS40\ + \ | Flavo40 | F40 | degrader (Maps isolate_40 to the F40 strain code and degrader role.) | PMID:42649294:\ + \ F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.)\ + \ | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69\ + \ (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports\ + \ F56 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_56 | 99.67 | 1.96 | high-quality\ + \ draft | GCA_046736295.1 (Supports the assembly accession for isolate_56.) | PMID:42649294: Mariniflexile\ + \ sp. AS56 | Flavo56 | F56 | degrader (Maps isolate_56 to the F56 strain code and degrader role.) | PMID:42649294:\ + \ V69 and F56 function as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: We isolated\ + \ 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia)\ + \ and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F94 as one of the Flavobacteriia\ + \ fucoidan degraders.) | PMID:42649294: isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1 (Supports\ + \ the assembly accession for isolate_94.) | PMID:42649294: Zobellia laminariae AS94 | Flavo94 | F94 | degrader\ + \ (Maps isolate_94 to the F94 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar\ + \ specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated\ + \ 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia)\ + \ and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V25 as the Luteolibacter fucoidan\ + \ degrader.) | PMID:42649294: isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1 (Supports the\ + \ assembly accession for isolate_25.) | PMID:42649294: Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 |\ + \ degrader (Maps isolate_25 to the V25 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are\ + \ fucose-specialists (Supports the fucose-specialist role of V4 and V25.) | PMID:42649294: We isolated 5 exploiters,\ + \ 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and\ + \ four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V69 as the Roseibacillus fucoidan\ + \ degrader.) | PMID:42649294: isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1 (Supports the\ + \ assembly accession for isolate_69.) | PMID:42649294: Roseibacillus_A persicicus AS69 | Verruco69 | V69 |\ + \ degrader (Maps isolate_69 to the V69 strain code and degrader role.) | PMID:42649294: V69 and F56 function\ + \ as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: To systematically evaluate\ + \ synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven\ + \ degraders F12, F40, F56, F94, V25, V69 and V4 (Supports V4 as one of the seven full-combinatorial degrader\ + \ members.) | PMID:42649294: LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1 (Supports the assembly\ + \ accession for LCC_4.) | PMID:42649294: Lentimonas sp. CC4 | Verruco4 | V4 | degrader (Maps LCC_4 to the\ + \ V4 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are fucose-specialists (Supports the\ + \ fucose-specialist role of V4 and V25.) | PMID:42649294: V69 and F56 function as generalists, whereas V4,\ + \ V25 and G88 are fucose-specialists and F12, F40 and F94 are rare-sugar specialists. (Supports division of\ + \ the isolated degraders into fucose specialists, rare-sugar specialists, and generalists.) | PMID:42649294:\ + \ access to complementary substrate fractions--rather than enzyme count--limits fucoidan degradation, such\ + \ that complete breakdown emerges from interactions among metabolically complementary degraders. (Supports\ + \ the source article's mechanism for community-level fucoidan breakdown.) | PMID:42649294: Total degradation\ + \ increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community F40,\ + \ F56, V69, F94 and V4 (Supports the observed degradation range across the seven-member composition landscape.)\ + \ | PMID:42649294: even when approaching near-complete degradation, 80% of interactions were still synergistic\ + \ beyond what would be expected from simple resource partitioning (Supports persistence of synergism across\ + \ high-degradation communities.) | PMID:42649294: Each community was assembled by mixing strains at equal\ + \ optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v)\ + \ fucoidan from F. vesiculosus as the sole carbon source. (Supports medium identity, fucoidan concentration,\ + \ inoculation OD, and working volume.) | PMID:42649294: Cultures were incubated for 5 days (n = 3 biological\ + \ replicates), after which supernatants were collected for degradation analysis. (Supports the five-day triplicate\ + \ endpoint for the combinatorial panel.) | PMID:42649294: Each community was assembled by mixing strains at\ + \ equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium (Supports batch assembly\ + \ into 1.8 mL culture volumes.)\n\n## Research Objective\n\nBuild a source-backed **causal interaction graph**\ + \ for the microbial community\n**Fucoidan Seven-Degrader Combinatorial SynCom**, suitable for the `ecological_interactions`\ + \ block of\n`kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml`. The graph's **nodes are mechanistic\n\ + interactions** and its **directed edges are causal links** (\"interaction A\nenables / drives / suppresses\ + \ interaction B\"). Extract only relationships the\nprimary literature supports; do not infer edges that are\ + \ not stated or directly\nimplied by an experiment.\n\n## Required Findings\n\n### 1. Interaction nodes (the\ + \ vertices)\n\nFor each mechanistic interaction, report as a table row:\n\n- **name** — a short, unique interaction\ + \ name (used as the node id and as the\n `target` of any causal edge that points to it).\n- **interaction_type**\ + \ — one of: MUTUALISM, COMMENSALISM, CROSS_FEEDING,\n COMPETITION, PREDATION, SYNTROPHY, NICHE_PARTITIONING,\ + \ STRAIN_COMPETITION,\n COLONIZATION_FACILITATION (or state \"OTHER: \" if none fit).\n- **scope**\ + \ — PAIRWISE (organism→organism) or COMMUNITY_LEVEL (emergent /\n abiotically driven, e.g. electrolysis-supplied\ + \ H2). PAIRWISE **must** name a\n source taxon.\n- **source_taxon → target_taxon** — the directed pair (who\ + \ acts on whom). Give\n NCBITaxon CURIEs + labels where resolvable.\n- **metabolites / biological_processes**\ + \ — the exchanged compound(s) (CHEBI) and\n process(es) (GO) that mediate the interaction.\n- **direction\ + \ / sign** — does the source **increase (+)** or **decrease (−)** the\n target's growth/activity? State it\ + \ explicitly.\n- **evidence** — a short **verbatim** snippet + its reference (PMID/DOI).\n\n### 2. Causal\ + \ edges (the arcs)\n\nThis is the graph structure. For every ordered pair of nodes where the\nliterature supports\ + \ a causal link, report a row:\n\n- **from** — upstream interaction name (a node from §1).\n- **to** — downstream\ + \ interaction name (a node from §1).\n- **causal link** — one sentence: *how* the upstream interaction causes\ + \ /\n enables / is required for / suppresses the downstream one (e.g. \"H2 produced\n by the syntrophic\ + \ oxidation lowers pH2 enough for the acetogen to grow, which\n in turn supplies acetate to the methanogen\"\ + ).\n- **evidence** — verbatim snippet + reference for the causal claim specifically\n (not just for the two\ + \ endpoints existing).\n\nPrefer chains that a paper demonstrates by perturbation (knockout, substrate\nremoval,\ + \ inhibitor, co-culture vs mono-culture), and say which experiment shows\neach edge. Flag any edge that is\ + \ hypothesized rather than demonstrated.\n\n### 3. Grounding\n\n- CURIEs where available: NCBITaxon (taxa),\ + \ CHEBI (metabolites), GO (processes),\n ENVO (environment), PMID / DOI (evidence).\n- Do not invent taxa,\ + \ ontology ids, snippets, accession ids, or citations. If a\n node or edge lacks a citable source, omit it\ + \ or mark it UNVERIFIED.\n\n## Output Format\n\nReturn a curation-focused report with:\n\n1. **Scope summary**\ + \ — the consortium and the top-level function the causal graph\n explains (1–3 sentences).\n2. **Node table**\ + \ — the interaction nodes (§1 columns).\n3. **Edge table** — the directed causal edges (§2 columns: from,\ + \ to, causal\n link, evidence).\n4. **Adjacency / DOT sketch** — a compact `from -> to` edge list (or Graphviz\ + \ DOT\n snippet) so the graph can be eyeballed; annotate edges with + / − sign.\n5. **Gaps & controversies**\ + \ — edges the literature disputes, or plausible edges\n with no direct evidence (candidates for a `Discussion`/knowledge-gap\ + \ note).\n6. **References** — every PMID/DOI cited, once.\n\nEach biological claim (node and edge) must carry\ + \ a verbatim snippet and a\nreference. This report is reviewed by a curator before anything is written to\n\ + `kb/communities/`.\n" + submitted_at: '2026-10-06T10:59:28.433058+00:00' + status: dry-run + query_sha256: b487e16a4b3e1226b5aea9532d0a9124753cc21bae8c4b9b8773d7a2caa2d754 + provider_job_submitted: false + provider_credits_spent: false + status: awaiting_specific_credit_authorization +- community: GLBRC_Exometabolite_Transwell_SynCom + dryrun_meta_sha256: 49fafb0a072c1ce333b3f0a0ba3a935b1633cc2470ee08c7e56dcd92309a6f24 + dryrun_meta: + slug: GLBRC_Exometabolite_Transwell_SynCom + community_path: kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml + community_id: CommunityMech:000091 + job: LITERATURE + job_id: job-futurehouse-paperqa3 + label: causal + template_path: templates/community_causal_graph_research.md + template_vars: + community_name: GLBRC Exometabolite Transwell SynCom System + community_id: CommunityMech:000091 + community_file: GLBRC_Exometabolite_Transwell_SynCom.yaml + community_slug: GLBRC_Exometabolite_Transwell_SynCom + community_category: BIOTECHNOLOGY + ecological_state: ENGINEERED + community_origin: SYNTHETIC + description: A synthetic community assay system for probing chemically mediated microbial interactions through + shared exometabolites. + source_summary: '' + environment_summary: laboratory environment | ENVO:01001405 | Filter plate Transwell synthetic community system + for exometabolite-mediated microbial interactions. + taxonomy_summary: exometabolite-interacting bacteria (Bacteria) - CROSS_FEEDER + interaction_summary: "Exometabolite-Mediated Interaction - N-acyl-L-homoserine lactone, antibacterial agent\ + \ - Community members interact chemically through small molecules, extracellular enzymes, and antibiotics\ + \ in shared medium. | AHL Diffusion and Violacein Induction - N-acyl-L-homoserine lactone - Chromobacterium\ + \ violaceum Cv017 produces acyl-homoserine lactones that diffuse through the Transwell reservoir and induce\ + \ quorum sensing, vioC transcription, and violacein production in the physically separated Cv026 biosensor.\n\ + \ | Three-Member Exometabolite Time Series - antibacterial agent - A stationary-phase Burkholderia thailandensis,\ + \ Chromobacterium violaceum and Pseudomonas syringae Transwell community produced a reproducible nonpolar\ + \ exometabolite profile in which mass features were depleted, produced de novo, or enriched at early and\ + \ mid time points.\n" + environmental_factor_summary: defined synthetic community design - Synthetic community members are cultured + in a filter plate system that separates cells while allowing chemical exchange through shared medium. - + Shared-reservoir chemical interactions are assayed using sensitive mass spectrometry. + growth_media_summary: tryptic soy agar/broth (TSA50) - representative Transwell assay - Physically separated + populations share a common medium reservoir; plates incubated with gentle shaking to homogenize member access + to media and exometabolites. + dataset_summary: '' + evidence_summary: 'PMID:29152587: we describe a straightforward synthetic community system that can be used + to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community + design and represented community context.) | PMID:29152587: we describe a straightforward synthetic community + system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined + synthetic community design and represented community context.) | PMID:29152587: we describe a straightforward + synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. + (Supports the defined synthetic community design and represented community context.) | PMID:29152587: AHLs + from Cv017 diffused through wells to induce quorum sensing and violacein production in Cv026 (Demonstrates + that a diffusible AHL signal moved across the filter-plate reservoir and activated the Cv026 quorum-sensing + biosensor. + + ) | PMID:29152587: We observed both decreases in existing features (clusters A and B) and production of + new features over time (clusters D, E, and F) (Supports time-resolved exometabolite depletion and production + in the physically separated three-member demonstration community. + + ) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production + in Cv026 (Anchors AHLs as the experimentally observed diffusible signal in the Transwell system.) | PMID:29152587: + antibiotics, are assayed from the reservoir using sensitive mass spectrometry. (The snippet names antibiotics + as one of the exometabolite classes assayed from the shared reservoir, anchoring the antibacterial agent + compound class as a central exchanged exometabolite in this community.) | PMID:29152587: we describe a straightforward + synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. + (Supports the defined synthetic community design and represented community context.) | PMID:29152587: cultures + in test tubes were incubated at 29°C at 200 rpm (Source states the 29 °C, 200 rpm cultivation conditions + of the representative Transwell community assay.) | PMID:29152587: each well has a 0.22-μm-pore filter bottom + and the plate fits into a shared medium reservoir (Source describes the Transwell filter-plate cultivation + vessel with a shared medium reservoir.)' + query_chars: 8368 + query: "# Microbial Community Causal-Graph Research Template\n\n## Target Community\n- **Community name:** GLBRC\ + \ Exometabolite Transwell SynCom System\n- **Community id:** CommunityMech:000091\n- **Community file:** GLBRC_Exometabolite_Transwell_SynCom.yaml\n\ + - **Community category:** BIOTECHNOLOGY\n- **Ecological state:** ENGINEERED\n- **Community origin:** SYNTHETIC\n\ + - **Environment:** laboratory environment | ENVO:01001405 | Filter plate Transwell synthetic community system\ + \ for exometabolite-mediated microbial interactions.\n- **Description:** A synthetic community assay system\ + \ for probing chemically mediated microbial interactions through shared exometabolites.\n\n## Existing Record\ + \ Context\n- **Taxa:** exometabolite-interacting bacteria (Bacteria) - CROSS_FEEDER\n- **Known ecological\ + \ interactions:** Exometabolite-Mediated Interaction - N-acyl-L-homoserine lactone, antibacterial agent -\ + \ Community members interact chemically through small molecules, extracellular enzymes, and antibiotics in\ + \ shared medium. | AHL Diffusion and Violacein Induction - N-acyl-L-homoserine lactone - Chromobacterium violaceum\ + \ Cv017 produces acyl-homoserine lactones that diffuse through the Transwell reservoir and induce quorum sensing,\ + \ vioC transcription, and violacein production in the physically separated Cv026 biosensor.\n | Three-Member\ + \ Exometabolite Time Series - antibacterial agent - A stationary-phase Burkholderia thailandensis, Chromobacterium\ + \ violaceum and Pseudomonas syringae Transwell community produced a reproducible nonpolar exometabolite profile\ + \ in which mass features were depleted, produced de novo, or enriched at early and mid time points.\n\n- **Environmental\ + \ factors:** defined synthetic community design - Synthetic community members are cultured in a filter plate\ + \ system that separates cells while allowing chemical exchange through shared medium. - Shared-reservoir chemical\ + \ interactions are assayed using sensitive mass spectrometry.\n- **Growth media / culture conditions:** tryptic\ + \ soy agar/broth (TSA50) - representative Transwell assay - Physically separated populations share a common\ + \ medium reservoir; plates incubated with gentle shaking to homogenize member access to media and exometabolites.\n\ + - **Associated datasets / resources:** \n- **Existing evidence:** PMID:29152587: we describe a straightforward\ + \ synthetic community system that can be used to interrogate exometabolite interactions among microorganisms.\ + \ (Supports the defined synthetic community design and represented community context.) | PMID:29152587: we\ + \ describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions\ + \ among microorganisms. (Supports the defined synthetic community design and represented community context.)\ + \ | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate\ + \ exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented\ + \ community context.) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and\ + \ violacein production in Cv026 (Demonstrates that a diffusible AHL signal moved across the filter-plate reservoir\ + \ and activated the Cv026 quorum-sensing biosensor.\n) | PMID:29152587: We observed both decreases in existing\ + \ features (clusters A and B) and production of new features over time (clusters D, E, and F) (Supports time-resolved\ + \ exometabolite depletion and production in the physically separated three-member demonstration community.\n\ + ) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production\ + \ in Cv026 (Anchors AHLs as the experimentally observed diffusible signal in the Transwell system.) | PMID:29152587:\ + \ antibiotics, are assayed from the reservoir using sensitive mass spectrometry. (The snippet names antibiotics\ + \ as one of the exometabolite classes assayed from the shared reservoir, anchoring the antibacterial agent\ + \ compound class as a central exchanged exometabolite in this community.) | PMID:29152587: we describe a straightforward\ + \ synthetic community system that can be used to interrogate exometabolite interactions among microorganisms.\ + \ (Supports the defined synthetic community design and represented community context.) | PMID:29152587: cultures\ + \ in test tubes were incubated at 29°C at 200 rpm (Source states the 29 °C, 200 rpm cultivation conditions\ + \ of the representative Transwell community assay.) | PMID:29152587: each well has a 0.22-μm-pore filter bottom\ + \ and the plate fits into a shared medium reservoir (Source describes the Transwell filter-plate cultivation\ + \ vessel with a shared medium reservoir.)\n\n## Research Objective\n\nBuild a source-backed **causal interaction\ + \ graph** for the microbial community\n**GLBRC Exometabolite Transwell SynCom System**, suitable for the `ecological_interactions`\ + \ block of\n`kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml`. The graph's **nodes are mechanistic\n\ + interactions** and its **directed edges are causal links** (\"interaction A\nenables / drives / suppresses\ + \ interaction B\"). Extract only relationships the\nprimary literature supports; do not infer edges that are\ + \ not stated or directly\nimplied by an experiment.\n\n## Required Findings\n\n### 1. Interaction nodes (the\ + \ vertices)\n\nFor each mechanistic interaction, report as a table row:\n\n- **name** — a short, unique interaction\ + \ name (used as the node id and as the\n `target` of any causal edge that points to it).\n- **interaction_type**\ + \ — one of: MUTUALISM, COMMENSALISM, CROSS_FEEDING,\n COMPETITION, PREDATION, SYNTROPHY, NICHE_PARTITIONING,\ + \ STRAIN_COMPETITION,\n COLONIZATION_FACILITATION (or state \"OTHER: \" if none fit).\n- **scope**\ + \ — PAIRWISE (organism→organism) or COMMUNITY_LEVEL (emergent /\n abiotically driven, e.g. electrolysis-supplied\ + \ H2). PAIRWISE **must** name a\n source taxon.\n- **source_taxon → target_taxon** — the directed pair (who\ + \ acts on whom). Give\n NCBITaxon CURIEs + labels where resolvable.\n- **metabolites / biological_processes**\ + \ — the exchanged compound(s) (CHEBI) and\n process(es) (GO) that mediate the interaction.\n- **direction\ + \ / sign** — does the source **increase (+)** or **decrease (−)** the\n target's growth/activity? State it\ + \ explicitly.\n- **evidence** — a short **verbatim** snippet + its reference (PMID/DOI).\n\n### 2. Causal\ + \ edges (the arcs)\n\nThis is the graph structure. For every ordered pair of nodes where the\nliterature supports\ + \ a causal link, report a row:\n\n- **from** — upstream interaction name (a node from §1).\n- **to** — downstream\ + \ interaction name (a node from §1).\n- **causal link** — one sentence: *how* the upstream interaction causes\ + \ /\n enables / is required for / suppresses the downstream one (e.g. \"H2 produced\n by the syntrophic\ + \ oxidation lowers pH2 enough for the acetogen to grow, which\n in turn supplies acetate to the methanogen\"\ + ).\n- **evidence** — verbatim snippet + reference for the causal claim specifically\n (not just for the two\ + \ endpoints existing).\n\nPrefer chains that a paper demonstrates by perturbation (knockout, substrate\nremoval,\ + \ inhibitor, co-culture vs mono-culture), and say which experiment shows\neach edge. Flag any edge that is\ + \ hypothesized rather than demonstrated.\n\n### 3. Grounding\n\n- CURIEs where available: NCBITaxon (taxa),\ + \ CHEBI (metabolites), GO (processes),\n ENVO (environment), PMID / DOI (evidence).\n- Do not invent taxa,\ + \ ontology ids, snippets, accession ids, or citations. If a\n node or edge lacks a citable source, omit it\ + \ or mark it UNVERIFIED.\n\n## Output Format\n\nReturn a curation-focused report with:\n\n1. **Scope summary**\ + \ — the consortium and the top-level function the causal graph\n explains (1–3 sentences).\n2. **Node table**\ + \ — the interaction nodes (§1 columns).\n3. **Edge table** — the directed causal edges (§2 columns: from,\ + \ to, causal\n link, evidence).\n4. **Adjacency / DOT sketch** — a compact `from -> to` edge list (or Graphviz\ + \ DOT\n snippet) so the graph can be eyeballed; annotate edges with + / − sign.\n5. **Gaps & controversies**\ + \ — edges the literature disputes, or plausible edges\n with no direct evidence (candidates for a `Discussion`/knowledge-gap\ + \ note).\n6. **References** — every PMID/DOI cited, once.\n\nEach biological claim (node and edge) must carry\ + \ a verbatim snippet and a\nreference. This report is reviewed by a curator before anything is written to\n\ + `kb/communities/`.\n" + submitted_at: '2026-10-06T10:59:33.823919+00:00' + status: dry-run + query_sha256: 65e425f7c3d41e12487524db64e17f52924cb198b312b058b2ea80d698257c74 + provider_job_submitted: false + provider_credits_spent: false + status: awaiting_specific_credit_authorization +arithmetic_checks: + pfos_only_fluorine_mg_l: 11.9833 + atrazine_nitrogen_mg_l: 10.334124049517804 + limitations: Arithmetic on stated inputs only. Treatment-specific PFOA inventory, raw measurements and true denominators + remain unresolved; not a misconduct finding. +limitations: +- Three complete primary main bodies and Methods read, including text captions; no figure images, separate supplements + or raw analytical data independently inspected. Fucoidan cached Table 2 selected rows are not original-spreadsheet + verification. +- Seven existing nodes retained, one generic platform node removed; one PARTIAL management-effect arrow retained + and one workflow arrow removed. Three node renames. No new structure or provider spend. +- 'Fucoidan and Transwell remain needs_research. Corrected existing graphs and gap discussions are not completed + expansion; #1465/#1467 remain open.' +- 'Canonical taxonomy, prior history, original source caches and non-graph raw blocks preserved, not certified. + GENIA evidence/non-graph follow-up #1468 remains open; Transwell assay/roster follow-up included in #1467.' +- V4 discussion resolved from publisher citation DOM; original cache rendering artifact preserved and explicitly + disclosed, not recast as a biological alias. +- Source-based self-adversarial review is not independent approval, protected merge or full-corpus completion. Reference-validator + 0.1.7 reports issue counts as Total checks, not executed-check counts. Fucoidan has 14 unchanged supplementary-taxonomy + findings; the other records must be evaluated separately. SupportingReference field discovery remains incomplete + under issue 476. Snippet matching is textual, not scientific validation. Reporting correction is tracked by issue 1469. +- Edison dry runs emitted a remote cost-map warning and used a local fallback; no API job or price estimate was + supplied. +records: +- path: kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml + id: CommunityMech:000449 + original_sha256: c6b8a0d748ce7750e0435947e3a0b781a6d2387bca3dc85dcafbdee7c2059737 + record_sha256: 61c3e21e1a830b7d0b3e2d3ee2fc7bc17ecc1724aa79414c106e04312c63f468 + status: needs_research + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml + scope: Whole record and all original nodes/arrows assessed; source-access limits explicit. Non-graph fields preserved, + not certified. + summary: Retain experimentally supported monomer specialization with canonical panel participants and accessibility/measurement + limits.; Retain the combinatorial functional landscape, five-member maximum and null-model comparison without + blanket mutualism. + renamed_nodes: {} + node_decisions: + - node: Complementary fucoidan monomer degradation + rationale: Retain experimentally supported monomer specialization with canonical panel participants and accessibility/measurement + limits. + - node: Seven-degrader synergistic function landscape + rationale: Retain the combinatorial functional landscape, five-member maximum and null-model comparison without + blanket mutualism. + removed_node_decisions: [] + edges_before: [] + edges_after: [] + retained_edge_decisions: [] + removed_edge_decisions: [] + references: + - PMID:42649294 + issues: + - 1465 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml + source_review: + PMID:42649294: + cache: references_cache/PMID_42649294.txt + supplement_cache: references_cache/PMID_42649294.supplement.md + url: https://www.nature.com/articles/s41586-026-10980-z + scope: Complete primary main body, Methods, main captions and data/code availability read from public HTML; + equation source text read, not visual rendering. Cached Table 2 selected rows read, not original spreadsheet. + No figure images, extended-data images, separate supplement files, raw data or code audited. + receipt: + path: /private/tmp/communitymech-batch42/fucoidan-primary.html + sha256: bfe396563380186392a212e9b0a5ec0053f92cca72cd02caed47b6946c5be956 + bytes: 644065 + v4_citation_dom:

    From these enrichments, we established a strain collection that reflects the taxonomic + and functional diversity of the community (Fig. 1b). We isolated 5 exploiters, 16 + scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) + and four members of the Flavobacteriia (F12, F40, F56 and F94). We additionally included the previously + characterized degrader Lentimonas sp. CC4 as strain V43. Isolate + classification was experimentally validated by confirming that degraders grow on fucoidan, exploiters + grow on fucose (but not fucoidan), and scavengers are unable to utilize either substrate (Supplementary + Fig. 1). + Although several degraders were not previously described, we found that in particular V69 and V4 co-occur + across many macroalgae-associated coastal habitats (Supplementary Fig. 2 and Supplementary + Note 2), + highlighting the ecological relevance of this strain collection. Collectively, these 29 strains provide + a foundation for dissecting the mechanisms of fucoidan degradation in microbial communities.

    + unresolved_graph_structure: Existing-node corrections do not complete new causal structure. One-community Edison + dry run completed; specific credit authorization requested. Issue remains open. +- path: kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml + id: CommunityMech:000352 + original_sha256: 1daada660d8dad257e3a5b04d861665bb03bd631c598322ebdea22ff452fac3f + record_sha256: 72fcc1720a4bb6b3a0a464f98524ab2bbf999b2b73eaf71efa0fa98be433b9c3 + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml + scope: Whole record and all original nodes/arrows assessed; source-access limits explicit. Non-graph fields preserved, + not certified. + summary: Retain computational complementarity as a hypothesis and remove the workflow-to-removal arrow.; Retain + distinct reported removal endpoints without mutualism, assigned flux or certified mineralization.; Retain DNA + composition and the bounded daily-ratio intervention; qualify its existing removal arrow as PARTIAL. + renamed_nodes: + GENIA Multipollutant Assembly: Predicted GENIA Metabolic Complementarity + Liquid Multipollutant Degradation: Reported GENIA Liquid Pollutant Removal + Community Stability During Degradation: GENIA DNA Composition and Ratio-Management Comparison + node_decisions: + - node: Predicted GENIA Metabolic Complementarity + rationale: Retain computational complementarity as a hypothesis and remove the workflow-to-removal arrow. + - node: Reported GENIA Liquid Pollutant Removal + rationale: Retain distinct reported removal endpoints without mutualism, assigned flux or certified mineralization. + - node: GENIA DNA Composition and Ratio-Management Comparison + rationale: Retain DNA composition and the bounded daily-ratio intervention; qualify its existing removal arrow + as PARTIAL. + removed_node_decisions: [] + edges_before: + - source: GENIA Multipollutant Assembly + target: Liquid Multipollutant Degradation + description: 'The genome-informed community architecture yielded synergistic PFOS, atrazine, and lignin removal + in minimal medium. + + ' + - source: Community Stability During Degradation + target: Liquid Multipollutant Degradation + description: 'Persistence of the complete inoculated roster maintained the multispecies degradation network + during the pollutant-removal time course. + + ' + edges_after: + - source: GENIA DNA Composition and Ratio-Management Comparison + target: Reported GENIA Liquid Pollutant Removal + description: 'PARTIAL: Allowing composition to reorganize was associated with greater PFOS and atrazine removal + than daily equal-ratio dilution/remixing. This reported intervention supports a bounded community-management + effect, not selective proof that persistence or a particular cross-feeding network causes removal. Dilution/remixing + changes handling as well as ratios; the reported lignin difference was not significant at p<0.05.' + retained_edge_decisions: + - source: GENIA DNA Composition and Ratio-Management Comparison + target: Reported GENIA Liquid Pollutant Removal + rationale: 'PARTIAL: Allowing composition to reorganize was associated with greater PFOS and atrazine removal + than daily equal-ratio dilution/remixing. This reported intervention supports a bounded community-management + effect, not selective proof that persistence or a particular cross-feeding network causes removal. Dilution/remixing + changes handling as well as ratios; the reported lignin difference was not significant at p<0.05.' + removed_edge_decisions: + - source: GENIA Multipollutant Assembly + target: Liquid Multipollutant Degradation + rationale: Computational assembly is a workflow, not an experimentally isolated biological mediator of pollutant + removal. + references: + - PMID:42036878 + issues: + - 1466 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom/2026-10-06T110349Z-codex-2abd02.yaml + source_review: + PMID:42036878: + cache: references_cache/PMID_42036878.txt + url: https://doi.org/10.1021/acs.est.6c01112 + scope: Complete cached primary main body, Methods, Results, Discussion and embedded captions read. Public + PMC browser path presented reCAPTCHA; no bypass. No figures, separate supplements or raw data independently + inspected. +- path: kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml + id: CommunityMech:000091 + original_sha256: f7791cb413836f0ac9e8b7624d661cad0a1e31ef5bee4d58b38b6b8506a62da9 + record_sha256: 8d1ef9c4d9c8b8b0f2c203a984747b02cfa32e10fe648d3fd5bf0a9548c8208f + status: needs_research + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml + scope: Whole record and all original nodes/arrows assessed; source-access limits explicit. Non-graph fields preserved, + not certified. + summary: Retain the bounded Cv017/Cv026 diffusible reporter response without invented canonical strain endpoints.; + Retain nonpolar time-series observations, distinguishing polar bactobolin and live-cell counts from resolved + causal mediation. + renamed_nodes: {} + node_decisions: + - node: AHL Diffusion and Violacein Induction + rationale: Retain the bounded Cv017/Cv026 diffusible reporter response without invented canonical strain endpoints. + - node: Three-Member Exometabolite Time Series + rationale: Retain nonpolar time-series observations, distinguishing polar bactobolin and live-cell counts from + resolved causal mediation. + removed_node_decisions: + - node: Exometabolite-Mediated Interaction + rationale: Generic assay-platform capability, not a separate observed ecological interaction. + edges_before: [] + edges_after: [] + retained_edge_decisions: [] + removed_edge_decisions: [] + references: + - PMID:29152587 + issues: + - 1467 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/GLBRC_Exometabolite_Transwell_SynCom/2026-10-06T110349Z-codex-80fddf.yaml + source_review: + PMID:29152587: + cache: references_cache/PMID_29152587.txt + url: https://journals.asm.org/doi/10.1128/msystems.00129-17 + scope: Complete cached primary main body and Methods, strain table text and embedded captions read using folded + text to avoid truncation. No figure images, separate supplements or raw spectra independently inspected. + unresolved_graph_structure: Existing-node corrections do not complete new causal structure. One-community Edison + dry run completed; specific credit authorization requested. Issue remains open. diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv index c6ccebe33..32caec1ee 100644 --- a/reports/causal_graph_review/inventory.tsv +++ b/reports/causal_graph_review/inventory.tsv @@ -173,9 +173,9 @@ kb/communities/FOS_Lactobacillus_MinimalCore_GutLiver_SynCom.yaml CommunityMech: kb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml CommunityMech:000027 08e60d74c495dfee5ec77a2a8ed63da4da51b1ebe1adb527350591d0e5b6340b 4 1 82.5 reports/causal_graph_review/decisions/20261006-three-records-batch41.yaml reviewed kb/communities/Fomitopsis_Ecoli_Nutritional_Stress_Coculture.yaml CommunityMech:000457 e23f7534b2c596261fdb8f6a69225c64ee0fcc4b10b95eb27bfccc7a48e2b0fe 2 0 62.5 reports/causal_graph_review/decisions/20261006-three-records-batch41.yaml reviewed kb/communities/FourSpecies_Aerobic_Lung_Microbiome_Model.yaml CommunityMech:000432 e6123414e5fb18492837dd471cc7a12496821032306fdb6a6fba9b938e7908fb 0 0 0.0 reports/causal_graph_review/decisions/20261006-three-records-batch41.yaml needs_research -kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml CommunityMech:000449 c6b8a0d748ce7750e0435947e3a0b781a6d2387bca3dc85dcafbdee7c2059737 2 0 60.0 pending -kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml CommunityMech:000352 1daada660d8dad257e3a5b04d861665bb03bd631c598322ebdea22ff452fac3f 3 2 98.3 pending -kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml CommunityMech:000091 f7791cb413836f0ac9e8b7624d661cad0a1e31ef5bee4d58b38b6b8506a62da9 3 0 75.0 pending +kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml CommunityMech:000449 61c3e21e1a830b7d0b3e2d3ee2fc7bc17ecc1724aa79414c106e04312c63f468 2 0 60.0 reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml needs_research +kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml CommunityMech:000352 72fcc1720a4bb6b3a0a464f98524ab2bbf999b2b73eaf71efa0fa98be433b9c3 3 1 78.3 reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml reviewed +kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml CommunityMech:000091 8d1ef9c4d9c8b8b0f2c203a984747b02cfa32e10fe648d3fd5bf0a9548c8208f 2 0 70.0 reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml needs_research kb/communities/GLBRC_Populus_Variovorax_SynCom28.yaml CommunityMech:000028 e6b9446f0f493eb1c8b2666dae051146e4375795c7d5bf51f485d09cb1e8170d 3 2 100.0 pending kb/communities/GLBRC_UFMP_Fermentation_Community.yaml CommunityMech:000029 da03a0180a9a75c6105755fe0f061f05964c258bf108a21ecd7ad11c4b14b755 3 2 100.0 pending kb/communities/GOM_Oil_Degrading_Consortium.yaml CommunityMech:000030 6b90550db3bc1cc1a75459278ec2541043eab31f177007facca1d41229489f2f 3 2 100.0 pending diff --git a/reports/causal_graph_review/reference-validator-correction-20261006-batch42.json b/reports/causal_graph_review/reference-validator-correction-20261006-batch42.json new file mode 100644 index 000000000..5f0c96ac4 --- /dev/null +++ b/reports/causal_graph_review/reference-validator-correction-20261006-batch42.json @@ -0,0 +1,657 @@ +{ + "baseline_head": "12c0771525564259d767ae1a98265d069a45d1e4", + "initial_failed_attempt": { + "base_commit": "12c0771525564259d767ae1a98265d069a45d1e4", + "scope": [ + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/initial-Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n", + "original_log_path": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema.log" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/initial-Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.log", + "log_sha256": "7acf7af78b98616f10115c9438ee198648374c715394e4f2471c8235c983701f", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv\n", + "original_log_path": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.log" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/initial-Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n", + "original_log_path": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms.log" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 1, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/initial-Fucoidan_Seven_Degrader_Combinatorial_SynCom-references.log", + "log_sha256": "7f1e7b50052a19851074e45c281a87b665d0c762147811e02ea2e28da5342a24", + "output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n", + "explained_output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n", + "original_log_path": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-references.log" + } + ], + "limitations": [ + "Three complete primary main bodies and Methods read, including text captions; no figure images, separate supplements or raw analytical data independently inspected. Fucoidan cached Table 2 selected rows are not original-spreadsheet verification.", + "Seven existing nodes retained, one generic platform node removed; one PARTIAL management-effect arrow retained and one workflow arrow removed. Three node renames. No new structure or provider spend.", + "Fucoidan and Transwell remain needs_research. Corrected existing graphs and gap discussions are not completed expansion; #1465/#1467 remain open.", + "Canonical taxonomy, prior history, original source caches and non-graph raw blocks preserved, not certified. GENIA evidence/non-graph follow-up #1468 remains open; Transwell assay/roster follow-up included in #1467.", + "V4 discussion resolved from publisher citation DOM; original cache rendering artifact preserved and explicitly disclosed, not recast as a biological alias.", + "Source-based self-adversarial review is not independent approval, protected merge or full-corpus completion. Reference-validator 0.1.7 performs zero effective checks for this schema; snippet matching is textual, not scientific validation.", + "Edison dry runs emitted a remote cost-map warning and used a local fallback; no API job or price estimate was supplied.", + "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate." + ] + }, + "baseline_reference_command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "baseline_reference_exit": 1, + "baseline_reference_output": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n", + "baseline_reference_log_sha256": "7f1e7b50052a19851074e45c281a87b665d0c762147811e02ea2e28da5342a24", + "original_taxonomy_unchanged": true, + "all_14_findings_match_supplement_sidecar": true, + "missing_snippets": [ + "isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1", + "Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader", + "isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1", + "Algibacter lectus AS40 | Flavo40 | F40 | degrader", + "isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1", + "Mariniflexile sp. AS56 | Flavo56 | F56 | degrader", + "isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1", + "Zobellia laminariae AS94 | Flavo94 | F94 | degrader", + "isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1", + "Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader", + "isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1", + "Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader", + "LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1", + "Lentimonas sp. CC4 | Verruco4 | V4 | degrader" + ], + "canary_command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "pytest", + "-q", + "tests/test_reference_validator_actually_validates.py" + ], + "canary_output": "..... [100%]\n5 passed in 14.74s\n", + "canary_exit": 0, + "cli": { + "path": "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/lib/python3.13/site-packages/linkml_reference_validator/cli/validate.py", + "sha256": "8435d1aed40c99e9dee763004776f90ddeee99439a6ec9b2dfc2e666ec783e63", + "counter_statement": "Total checks: {len(all_results)}", + "interpretation": "Number of validation issues, not number of executed checks." + }, + "fetcher": { + "path": "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/lib/python3.13/site-packages/linkml_reference_validator/etl/reference_fetcher.py", + "sha256": "4f3d6d590cb38886fb2849e59bfcf8fd019e05d0ef36387634cd8774c24b9728" + }, + "historical_candidate_files": { + "reports/causal_graph_review/adversarial-review-20261006-batch35.yaml": "2e8c17652af5c990e8600b5a935001b812414cde2f26fae7629c1e7601de7a49", + "reports/causal_graph_review/adversarial-review-20261006-batch32.yaml": "fb31af941ac34e88b7c749a987c6fef46ab8a95dc173b8ccbdd890e23ee1c279", + "reports/causal_graph_review/validation-20261006-batch34.json": "fb5c3b62db09d88c13fab9826a2b2de2a1b5115670bc6b73aaea458641e90d2f", + "reports/causal_graph_review/adversarial-review-20261006-batch36.yaml": "411a075ced01f0daaf59db828b6bfc2163a00d6d040ecae1328b5aee70b5452e", + "reports/causal_graph_review/adversarial-review-20261006-batch33.yaml": "bbc95a9fdbe89641db5ed5315e01160fea0aed3524a6252080b2aa806e81d4ae", + "reports/causal_graph_review/validation-20261006-batch32.json": "291e49842642eaf938ff287278ff0a357f89763d37bec60a86f237ffdf921d85", + "reports/causal_graph_review/validation-20261006-batch37.json": "1129fa733ce586e6dacbd7649137cd4b8ea9e70c62d8bb375c9a97daf150a307", + "reports/causal_graph_review/validation-20261006-batch33.json": "55f4a03646d10c6365106b420cd75a4a251cd132e870131ae22f3373c78cf451", + "reports/causal_graph_review/adversarial-review-20261006-batch31.yaml": "2c1e54bb636d8534313e280c6a19fdee4bedaa235c76d0e5ff5a17f71d573541", + "reports/causal_graph_review/adversarial-review-20261006-batch41.yaml": "44cef924e165c081ab6e25a0aff69791ff8ad15033822a94892da50942d92a37", + "reports/causal_graph_review/adversarial-review-20261006-batch40.yaml": "6753c3c652290b010a45e003d8baa2321127b6e338be8c49958a412b45fa96bf", + "reports/causal_graph_review/adversarial-review-20261006-batch37.yaml": "c1674f7ad8d33b6a7d903c022b21f51e026d6e9bd3d0a445d1520494e12c27ac", + "reports/causal_graph_review/validation-20261006-batch36.json": "74a51607a5d2de0fa98d7936dadcbee8753c112316fd5f3cf8bf77747f5e89fe", + "reports/causal_graph_review/validation-20261006-batch38.json": "5d5c892e1170e1d724f22ec71d239be6b950d88a9ae91a5600cb168f77d7397b", + "reports/causal_graph_review/validation-20261006-batch35.json": "dda3f91dfad6a28436e5fa4acd144e34f2e7064ab01c7f0742d2905a7fd58c24", + "reports/causal_graph_review/adversarial-review-20261006-batch39.yaml": "2a70cf9c4ecccac2139f0917993ee38f7bc17ee573b8d5314fc23f1559a17a92", + "reports/causal_graph_review/validation-20261006-batch39.json": "b0e176e0fff1e270ce36672da2f5f1292a34447d0250380885714516aa71ee2f", + "reports/causal_graph_review/validation-20261006-batch31.json": "0bc604d1282f6313908b213e41443a1a33044bfcc214fc67cac087aca74f0654", + "reports/causal_graph_review/validation-20261006-batch41.json": "3c1a052d101654b74167b7cd032fc501b8628bd1384fa60966e95e8b20f33cb9", + "reports/causal_graph_review/validation-20261006-batch40.json": "6861f3173971067c8a198c744e2ffa3eca5ffb5d78ff64fac8c28713ea293dc9", + "reports/causal_graph_review/adversarial-review-20261006-batch34.yaml": "3a44d2f69b8390801b62eb251ddd652ffd2f0804a1c02c193a159bec2b9eff20", + "reports/causal_graph_review/adversarial-review-20261006-batch38.yaml": "9b9be5ad62e42821f1503482f9a623174aaf62bc780c9bddb16e4b63dcb20323", + "reports/causal_graph_review/decisions/20261006-three-records-batch40.yaml": "80329e3dcae2352d3b6937185835394e337f6405310643363b57b841588a62e0", + "reports/causal_graph_review/decisions/20261006-three-records-batch41.yaml": "4f0a70fa0459dfeeb6c9871c54f2440b9067a4ee5037d80808c4c4be7a07dda6" + }, + "scan": "rg --no-ignore --hidden; candidate matches include quoted or correctly negated claims and require interpretation, not blanket error labeling.", + "limitations": "14 unchanged taxonomy failures are a real reference-CLI failure, not a pass. Supplement sidecar text matching is not independent inspection of original Table 2. Existing SupportingReference coverage gap #476 and selected-excerpt trust issue #1362 remain open.", + "issue": 1469, + "correction": "Historical claims that Total checks: 0 establishes zero executed checks or a no-op are withdrawn. The CLI counter counts reported issues. Passing canaries establish real EvidenceItem validation; SupportingReference coverage remains incomplete under #476. Historical raw outputs are preserved, not rerun or rewritten by this correction.", + "initial_attempt_json_sha256": "5ce2ef9341cb14872feb106d7e03609118c83ae381986df6067c9cccdee093a2", + "baseline_snippet_audit": { + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "output": "# 50 evidence snippets scanned across 1 files\n MATCH 35\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 15\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n 15 (15 hard) kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\n\n# MISMATCH/WEAK detail\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter lectus AS40 | Flavo40 | F40 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Mariniflexile sp. AS56 | Flavo56 | F56 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Zobellia laminariae AS94 | Flavo94 | F94 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\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", + "log_sha256": "153bd814f6e018df35b47ca7ebd961e235049fcc533a79749359635213824c0d", + "unchanged_counts": { + "MATCH": 35, + "MISMATCH": 15, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "NOCONTENT": 0 + }, + "explanation": "The same 14 taxonomy excerpts plus the identical V4 Table 2 discussion excerpt are absent from article-only source coverage. They are present in the separate supplemental cache; the original spreadsheet was not independently inspected. CLI exit 0 is not a zero-mismatch result." + }, + "second_failed_attempt": { + "base_commit": "12c0771525564259d767ae1a98265d069a45d1e4", + "scope": [ + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.log", + "log_sha256": "7acf7af78b98616f10115c9438ee198648374c715394e4f2471c8235c983701f", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 1, + "expected_exit_codes": [ + 1 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-references.log", + "log_sha256": "7f1e7b50052a19851074e45c281a87b665d0c762147811e02ea2e28da5342a24", + "output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n", + "explained_output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-snippets.log", + "log_sha256": "153bd814f6e018df35b47ca7ebd961e235049fcc533a79749359635213824c0d", + "output_tail": "# 50 evidence snippets scanned across 1 files\n MATCH 35\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 15\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n 15 (15 hard) kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\n\n# MISMATCH/WEAK detail\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter lectus AS40 | Flavo40 | F40 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Mariniflexile sp. AS56 | Flavo56 | F56 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Zobellia laminariae AS94 | Flavo94 | F94 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\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" + } + ], + "limitations": [ + "Three complete primary main bodies and Methods read, including text captions; no figure images, separate supplements or raw analytical data independently inspected. Fucoidan cached Table 2 selected rows are not original-spreadsheet verification.", + "Seven existing nodes retained, one generic platform node removed; one PARTIAL management-effect arrow retained and one workflow arrow removed. Three node renames. No new structure or provider spend.", + "Fucoidan and Transwell remain needs_research. Corrected existing graphs and gap discussions are not completed expansion; #1465/#1467 remain open.", + "Canonical taxonomy, prior history, original source caches and non-graph raw blocks preserved, not certified. GENIA evidence/non-graph follow-up #1468 remains open; Transwell assay/roster follow-up included in #1467.", + "V4 discussion resolved from publisher citation DOM; original cache rendering artifact preserved and explicitly disclosed, not recast as a biological alias.", + "Source-based self-adversarial review is not independent approval, protected merge or full-corpus completion. Reference-validator 0.1.7 reports issue counts as Total checks, not executed-check counts. Fucoidan has 14 unchanged supplementary-taxonomy findings; the other records must be evaluated separately. SupportingReference field discovery remains incomplete under issue 476. Snippet matching is textual, not scientific validation. Reporting correction is tracked by issue 1469.", + "Edison dry runs emitted a remote cost-map warning and used a local fallback; no API job or price estimate was supplied.", + "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate." + ], + "reference_cli_known_failure": "14 unchanged Fucoidan taxonomy snippets are present in the separate supplement sidecar, which the installed reference fetcher does not combine with article text. Baseline output exactly reproduced; this is not a clean pass." + }, + "second_failed_attempt_reason": "An overstrict batch-helper assertion required all snippets to MATCH. The 15 mismatches were then reproduced unchanged at the pre-edit baseline, not fixed by changing sources or weakening the repository auditor.", + "baseline_snippet_probe_preflight": "The first scratch probe lacked PYTHONPATH for the source checkout and exited before establishing a baseline. It was corrected to set the checkout src path; only the successful repeated output is used for comparison.", + "other_snippet_baselines": [ + { + "stem": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "baseline": { + "exit_code": 0, + "counts": { + "MATCH": 20, + "RENDERING": 9, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "output": "# 29 evidence snippets scanned across 1 files\n MATCH 20\n RENDERING 9\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 9 kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n", + "sha256": "812267826dad217d0d0603e1df7ff68f2079aa494aab10197e892a551e1d33b8" + }, + "current": { + "exit_code": 0, + "counts": { + "MATCH": 22, + "RENDERING": 9, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "output": "# 31 evidence snippets scanned across 1 files\n MATCH 22\n RENDERING 9\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 9 kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n", + "sha256": "e3d952810bc609e323eabfafd5da6310980f3555769db937925f5a8213bf9490" + } + }, + { + "stem": "GLBRC_Exometabolite_Transwell_SynCom", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "baseline": { + "exit_code": 0, + "counts": { + "MATCH": 10, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "output": "# 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", + "sha256": "1835af07ebf0373785ca2d25de18c6984a3cbcfdec0d2610f1d8437504408710" + }, + "current": { + "exit_code": 0, + "counts": { + "MATCH": 9, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "output": "# 9 evidence snippets scanned across 1 files\n MATCH 9\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", + "sha256": "32e79f5bf36e5c97f219c301b9924d6a9da1ff1bf07e2b076f93f0d0ee74a358" + } + } + ], + "third_failed_attempt": { + "base_commit": "12c0771525564259d767ae1a98265d069a45d1e4", + "scope": [ + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.log", + "log_sha256": "7acf7af78b98616f10115c9438ee198648374c715394e4f2471c8235c983701f", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 1, + "expected_exit_codes": [ + 1 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-references.log", + "log_sha256": "7f1e7b50052a19851074e45c281a87b665d0c762147811e02ea2e28da5342a24", + "output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n", + "explained_output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-snippets.log", + "log_sha256": "153bd814f6e018df35b47ca7ebd961e235049fcc533a79749359635213824c0d", + "output_tail": "# 50 evidence snippets scanned across 1 files\n MATCH 35\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 15\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n 15 (15 hard) kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\n\n# MISMATCH/WEAK detail\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter lectus AS40 | Flavo40 | F40 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Mariniflexile sp. AS56 | Flavo56 | F56 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Zobellia laminariae AS94 | Flavo94 | F94 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\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": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-rank.log", + "log_sha256": "2fa482c6cba4626844e5533485d6802c3edd4f0b39aae6334a666858c34b77ee", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000449\",\n \"name\": \"Fucoidan Seven-Degrader Combinatorial SynCom\",\n \"score\": 60.0,\n \"taxonomy\": 7,\n \"connected_taxa\": 7,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 2,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\"\n }\n]\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_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/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict.tsv", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict.log", + "log_sha256": "4c0b0535cc42134b6cc4a9f57b0cde08f392df803109fa79792bd6c87ba7dd9c", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict.tsv\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-references.log", + "log_sha256": "32ef19b2de79565be241fdf4c34b80bb1b1d688439d758113d6efdf53ba7fc84", + "output_tail": "Validating kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_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/GENIA_NineMember_MultiPollutant_Bioremediation_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": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-snippets.log", + "log_sha256": "e3d952810bc609e323eabfafd5da6310980f3555769db937925f5a8213bf9490", + "output_tail": "# 31 evidence snippets scanned across 1 files\n MATCH 22\n RENDERING 9\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 9 kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n" + } + ], + "limitations": [ + "Three complete primary main bodies and Methods read, including text captions; no figure images, separate supplements or raw analytical data independently inspected. Fucoidan cached Table 2 selected rows are not original-spreadsheet verification.", + "Seven existing nodes retained, one generic platform node removed; one PARTIAL management-effect arrow retained and one workflow arrow removed. Three node renames. No new structure or provider spend.", + "Fucoidan and Transwell remain needs_research. Corrected existing graphs and gap discussions are not completed expansion; #1465/#1467 remain open.", + "Canonical taxonomy, prior history, original source caches and non-graph raw blocks preserved, not certified. GENIA evidence/non-graph follow-up #1468 remains open; Transwell assay/roster follow-up included in #1467.", + "V4 discussion resolved from publisher citation DOM; original cache rendering artifact preserved and explicitly disclosed, not recast as a biological alias.", + "Source-based self-adversarial review is not independent approval, protected merge or full-corpus completion. Reference-validator 0.1.7 reports issue counts as Total checks, not executed-check counts. Fucoidan has 14 unchanged supplementary-taxonomy findings; the other records must be evaluated separately. SupportingReference field discovery remains incomplete under issue 476. Snippet matching is textual, not scientific validation. Reporting correction is tracked by issue 1469.", + "Edison dry runs emitted a remote cost-map warning and used a local fallback; no API job or price estimate was supplied.", + "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate." + ], + "resume_note": "Existing command receipts reused only after command identity, exit status, log hash, record hashes and unchanged source-cache checks. Two earlier batch-helper failures are preserved in the correction receipt; baseline mismatches are explicitly retained.", + "reference_cli_known_failure": "14 unchanged Fucoidan taxonomy snippets are present in the separate supplement sidecar, which the installed reference fetcher does not combine with article text. Baseline output exactly reproduced; this is not a clean pass.", + "snippet_counts_by_record": { + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml": { + "MATCH": 35, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 15, + "NOCONTENT": 0 + } + }, + "snippet_audit_known_findings": "35 Fucoidan MATCH and 15 unchanged supplement-sidecar MISMATCH. Exact baseline output preserved; this is not an all-MATCH result." + }, + "third_failed_attempt_reason": "Batch helper incorrectly demanded all-MATCH for GENIA; baseline retained RENDERING classes are faithful punctuation/spacing variants, not new mismatches. Source quotes and repository auditor unchanged." +} diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json index fc4271c67..39a3a502b 100644 --- a/reports/causal_graph_review/summary.json +++ b/reports/causal_graph_review/summary.json @@ -2,14 +2,14 @@ "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.", "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": 1469, - "edges": 687, + "nodes": 1468, + "edges": 686, "records_without_nodes": 8, "records_without_edges": 146, "review_status_counts": { - "needs_research": 10, - "pending": 288, - "reviewed": 162 + "needs_research": 12, + "pending": 285, + "reviewed": 163 }, "structural_defects": [], "network_audit": [ diff --git a/reports/causal_graph_review/validation-20261006-batch42.json b/reports/causal_graph_review/validation-20261006-batch42.json new file mode 100644 index 000000000..7232afe88 --- /dev/null +++ b/reports/causal_graph_review/validation-20261006-batch42.json @@ -0,0 +1,845 @@ +{ + "base_commit": "12c0771525564259d767ae1a98265d069a45d1e4", + "scope": [ + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.log", + "log_sha256": "7acf7af78b98616f10115c9438ee198648374c715394e4f2471c8235c983701f", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-strict.tsv\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 1, + "expected_exit_codes": [ + 1 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-references.log", + "log_sha256": "7f1e7b50052a19851074e45c281a87b665d0c762147811e02ea2e28da5342a24", + "output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n", + "explained_output_tail": "Validating kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Issues (14):\n [ERROR] Text part not found as substring: 'isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1'\n Location: taxonomy[0].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader'\n Location: taxonomy[0].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1'\n Location: taxonomy[1].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Algibacter lectus AS40 | Flavo40 | F40 | degrader'\n Location: taxonomy[1].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1'\n Location: taxonomy[2].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Mariniflexile sp. AS56 | Flavo56 | F56 | degrader'\n Location: taxonomy[2].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1'\n Location: taxonomy[3].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Zobellia laminariae AS94 | Flavo94 | F94 | degrader'\n Location: taxonomy[3].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1'\n Location: taxonomy[4].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader'\n Location: taxonomy[4].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1'\n Location: taxonomy[5].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader'\n Location: taxonomy[5].evidence[2].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1'\n Location: taxonomy[6].evidence[1].snippet\n Reference: PMID:42649294\n [ERROR] Text part not found as substring: 'Lentimonas sp. CC4 | Verruco4 | V4 | degrader'\n Location: taxonomy[6].evidence[2].snippet\n Reference: PMID:42649294\n\nValidation Summary:\n Total checks: 14\n Issues found: 14\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-snippets.log", + "log_sha256": "153bd814f6e018df35b47ca7ebd961e235049fcc533a79749359635213824c0d", + "output_tail": "# 50 evidence snippets scanned across 1 files\n MATCH 35\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 15\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n 15 (15 hard) kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\n\n# MISMATCH/WEAK detail\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Algibacter lectus AS40 | Flavo40 | F40 | degrader...\n [MISMATCH cov=0.07] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Mariniflexile sp. AS56 | Flavo56 | F56 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Zobellia laminariae AS94 | Flavo94 | F94 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1...\n [MISMATCH cov=0.04] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader...\n [MISMATCH cov=0.05] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\n [MISMATCH cov=0.03] kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml PMID:42649294\n Lentimonas sp. CC4 | Verruco4 | V4 | degrader...\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": "Fucoidan_Seven_Degrader_Combinatorial_SynCom-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-rank.log", + "log_sha256": "2fa482c6cba4626844e5533485d6802c3edd4f0b39aae6334a666858c34b77ee", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000449\",\n \"name\": \"Fucoidan Seven-Degrader Combinatorial SynCom\",\n \"score\": 60.0,\n \"taxonomy\": 7,\n \"connected_taxa\": 7,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 2,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\"\n }\n]\n" + }, + { + "check": "Fucoidan_Seven_Degrader_Combinatorial_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/Fucoidan_Seven_Degrader_Combinatorial_SynCom/2026-10-06T110348Z-codex-5b5854.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/Fucoidan_Seven_Degrader_Combinatorial_SynCom-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict.tsv", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict.log", + "log_sha256": "4c0b0535cc42134b6cc4a9f57b0cde08f392df803109fa79792bd6c87ba7dd9c", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-strict.tsv\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-references.log", + "log_sha256": "32ef19b2de79565be241fdf4c34b80bb1b1d688439d758113d6efdf53ba7fc84", + "output_tail": "Validating kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_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/GENIA_NineMember_MultiPollutant_Bioremediation_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": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-snippets.log", + "log_sha256": "e3d952810bc609e323eabfafd5da6310980f3555769db937925f5a8213bf9490", + "output_tail": "# 31 evidence snippets scanned across 1 files\n MATCH 22\n RENDERING 9\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 9 kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-rank.log", + "log_sha256": "b5ad6ab5704c03224351691e638479e11eeae25765b64a962124f9d92b527382", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000352\",\n \"name\": \"GENIA Nine-Member Multi-Pollutant Bioremediation SynCom\",\n \"score\": 78.3,\n \"taxonomy\": 9,\n \"connected_taxa\": 9,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 1,\n \"interaction_evidence\": 6,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_downstream\",\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml\"\n }\n]\n" + }, + { + "check": "GENIA_NineMember_MultiPollutant_Bioremediation_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/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom/2026-10-06T110349Z-codex-2abd02.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "GLBRC_Exometabolite_Transwell_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "GLBRC_Exometabolite_Transwell_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-strict.tsv", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-strict.log", + "log_sha256": "3b749daea2c24e2d921c61513c47c54ec8d1bed1b6f40a3016e58f1c120eb8f6", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch42/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-batch42/GLBRC_Exometabolite_Transwell_SynCom-strict.tsv\n" + }, + { + "check": "GLBRC_Exometabolite_Transwell_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "GLBRC_Exometabolite_Transwell_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-references.log", + "log_sha256": "2ca9ba7de08639725a2fb14eb8115562bbf1fd500329a675ba24affaf7654eb2", + "output_tail": "Validating kb/communities/GLBRC_Exometabolite_Transwell_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/GLBRC_Exometabolite_Transwell_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": "GLBRC_Exometabolite_Transwell_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-snippets.log", + "log_sha256": "32e79f5bf36e5c97f219c301b9924d6a9da1ff1bf07e2b076f93f0d0ee74a358", + "output_tail": "# 9 evidence snippets scanned across 1 files\n MATCH 9\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": "GLBRC_Exometabolite_Transwell_SynCom-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-rank.log", + "log_sha256": "ad533e188d176fcdcd427d7bb2281916f5e92129a455cef7b2c1c238008dc50e", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000091\",\n \"name\": \"GLBRC Exometabolite Transwell SynCom System\",\n \"score\": 70.0,\n \"taxonomy\": 1,\n \"connected_taxa\": 1,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 2,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 2,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\"\n ],\n \"path\": \"kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml\"\n }\n]\n" + }, + { + "check": "GLBRC_Exometabolite_Transwell_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/GLBRC_Exometabolite_Transwell_SynCom/2026-10-06T110349Z-codex-80fddf.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/GLBRC_Exometabolite_Transwell_SynCom-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-batch42/inventory.log", + "log_sha256": "31ad1d5132319d0c575d841dd32a7c382b90bb7d631bb1cbe9a964ba80d9c257", + "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\": 1468,\n \"edges\": 686,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 146,\n \"review_status_counts\": {\n \"needs_research\": 12,\n \"pending\": 285,\n \"reviewed\": 163\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-batch42/network.log", + "log_sha256": "c035fe6ed0bbf90371ab58d6557716c51eea79ac628e204173d70075f9efaa26", + "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-batch42/rank-all.log", + "log_sha256": "3aa8ec4e513af85ef029c7ae6c968753dbc633563d929f09484ad3b572006a55", + "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-batch42/render.log", + "log_sha256": "e4697b3ddb98ab1736e3dc4ba9351323deffeca876fde19f61f485008d7e6611", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch42/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch42/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch42/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-batch42/render-repeat.log", + "log_sha256": "e4697b3ddb98ab1736e3dc4ba9351323deffeca876fde19f61f485008d7e6611", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch42/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch42/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch42/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch42/docs/index.html\n" + }, + { + "check": "connectivity-survey", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-c", + "import json,runpy; print(json.dumps(runpy.run_path(\"tests/test_community_level_connectivity_credit.py\")[\"_survey\"](),sort_keys=True))" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/connectivity-survey.log", + "log_sha256": "fb47676e0ec6945737e5aeeba11192e7b8ff073a9e93ce8809972a4316c7c565", + "output_tail": "{\"community_level_only\": 263, \"credited_solely_by_the_rule\": 1219, \"mixed\": 124, \"records\": 460, \"taxa\": 1494, \"with_community_level\": 387}\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_batch5.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-batch42/regressions.log", + "log_sha256": "f30a46b09386769b25f69d8234f2799a5308e29707da309ccf83e09fd69bd7fa", + "output_tail": "........................................................................ [ 16%]\n........................................................................ [ 32%]\n........................................................................ [ 49%]\n........................................................................ [ 65%]\n........................................................................ [ 81%]\n........................................................................ [ 98%]\n........ [100%]\n440 passed in 203.92s (0:03:23)\n" + }, + { + "check": "black", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black", + "--check", + "tests/test_causal_review_batch42.py", + "tests/test_participating_taxa.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/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_batch42.py", + "tests/test_participating_taxa.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch42/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-batch42/diff-check.log", + "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "output_tail": "" + } + ], + "limitations": [ + "Three complete primary main bodies and Methods read, including text captions; no figure images, separate supplements or raw analytical data independently inspected. Fucoidan cached Table 2 selected rows are not original-spreadsheet verification.", + "Seven existing nodes retained, one generic platform node removed; one PARTIAL management-effect arrow retained and one workflow arrow removed. Three node renames. No new structure or provider spend.", + "Fucoidan and Transwell remain needs_research. Corrected existing graphs and gap discussions are not completed expansion; #1465/#1467 remain open.", + "Canonical taxonomy, prior history, original source caches and non-graph raw blocks preserved, not certified. GENIA evidence/non-graph follow-up #1468 remains open; Transwell assay/roster follow-up included in #1467.", + "V4 discussion resolved from publisher citation DOM; original cache rendering artifact preserved and explicitly disclosed, not recast as a biological alias.", + "Source-based self-adversarial review is not independent approval, protected merge or full-corpus completion. Reference-validator 0.1.7 reports issue counts as Total checks, not executed-check counts. Fucoidan has 14 unchanged supplementary-taxonomy findings; the other records must be evaluated separately. SupportingReference field discovery remains incomplete under issue 476. Snippet matching is textual, not scientific validation. Reporting correction is tracked by issue 1469.", + "Edison dry runs emitted a remote cost-map warning and used a local fallback; no API job or price estimate was supplied.", + "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate.", + "The CLI Total checks counter counts reported issues, not executed checks. Fucoidan has 14 unchanged taxonomy failures against article-only text; all match its separate supplement sidecar. GENIA and Transwell report zero issues and exit 0. SupportingReference coverage remains incomplete under #476. See the committed correction receipt and #1469; no clean Fucoidan reference-CLI pass is claimed." + ], + "resume_note": "Existing command receipts reused after command identity, exit status, log hash, record hashes and unchanged source-cache checks. Three earlier batch-helper failures are preserved in the correction receipt, plus a scratch-probe PYTHONPATH correction. Baseline mismatches and rendering classes remain explicit; no repository auditor was weakened.", + "reference_cli_known_failure": "14 unchanged Fucoidan taxonomy snippets are present in the separate supplement sidecar, which the installed reference fetcher does not combine with article text. Baseline output exactly reproduced; this is not a clean pass.", + "snippet_counts_by_record": { + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml": { + "MATCH": 35, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 15, + "NOCONTENT": 0 + }, + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml": { + "MATCH": 22, + "RENDERING": 9, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml": { + "MATCH": 9, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + } + }, + "snippet_audit_known_findings": "35 Fucoidan MATCH and 15 unchanged supplement-sidecar MISMATCH. Exact baseline output preserved; this is not an all-MATCH result.", + "unchanged_raw_blocks": 45, + "unchanged_record_files": 457, + "unchanged_cache_files": 920, + "network_delta": { + "existing_findings_preserved": 33, + "new_disconnected": 0, + "added_findings": {}, + "rationale": "All baseline warnings exactly preserved; no invented graph links to suppress warnings." + }, + "render_determinism": true, + "published_description_coverage": { + "pages": 456, + "nodes": 1454, + "arrows": 678 + }, + "participant_census": { + "connectivity_before": { + "community_level_only": 263, + "credited_solely_by_the_rule": 1219, + "mixed": 124, + "records": 460, + "taxa": 1494, + "with_community_level": 387 + }, + "connectivity_after": { + "community_level_only": 263, + "credited_solely_by_the_rule": 1219, + "mixed": 124, + "records": 460, + "taxa": 1494, + "with_community_level": 387 + }, + "exact_change": "Two canonical panel rosters added: 187 to 189 registered records. Transwell retains unresolved Bacteria umbrella and needs_research. Connectivity census and numeric bounds unchanged; taxonomy preserved.", + "numeric_bounds_changed": false + }, + "corpus": { + "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.", + "records": 460, + "nodes": 1468, + "edges": 686, + "records_without_nodes": 8, + "records_without_edges": 146, + "review_status_counts": { + "needs_research": 12, + "pending": 285, + "reviewed": 163 + }, + "structural_defects": [] + }, + "tested_file_sha256": { + "reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml": "c0b2c349054635e9d6993082265669faede9e45656a6ae48549c87df053df645", + "tests/test_causal_review_batch42.py": "fb13bd5f9bb330039a84669fcede705b037515ce4897fbcb562616e6eed1a6a3", + "tests/test_participating_taxa.py": "77a1f6e458a1ea58c2f00fc04d0d7f412944c75d9ef21920566e9873d89e475a", + "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml": "61c3e21e1a830b7d0b3e2d3ee2fc7bc17ecc1724aa79414c106e04312c63f468", + "kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml": "72fcc1720a4bb6b3a0a464f98524ab2bbf999b2b73eaf71efa0fa98be433b9c3", + "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml": "8d1ef9c4d9c8b8b0f2c203a984747b02cfa32e10fe648d3fd5bf0a9548c8208f", + "reports/causal_graph_review/README.md": "6db1c56cc36836b694fa92b3929ba296e8a7173169246c1c25e65255e6da90ed", + "reports/causal_graph_review/reference-validator-correction-20261006-batch42.json": "9718d69ee2c5f87c174b3bc8e8bf170f483ffd1b32c9ccd789ff96e9c041f2ab" + }, + "status": "verified_one_completed_review_and_two_research_pending_graphs", + "reference_validator_caveat": "The CLI Total checks counter counts reported issues, not executed checks. Fucoidan has 14 unchanged taxonomy failures against article-only text; all match its separate supplement sidecar. GENIA and Transwell report zero issues and exit 0. SupportingReference coverage remains incomplete under #476. See the committed correction receipt and #1469; no clean Fucoidan reference-CLI pass is claimed.", + "pre_research_baseline": { + "base_commit": "12c0771525564259d767ae1a98265d069a45d1e4", + "base_tree": "d6664ec28961715038f08b1565bcbffc98383a50", + "research_worktree": "/private/tmp/communitymech-causal-batch41", + "checks": [ + { + "name": "rank", + "command": [ + "just", + "rank-causal-graphs" + ], + "exit_code": 0, + "expected_exit_code": 0, + "log": "/private/tmp/communitymech-batch42/baseline-rank.log", + "sha256": "ba634290f8566afd0cb1a1cc38bd0f1d35e125f96dd1a96eb84fb5d1ba5edf22", + "output_tail": "nol_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" + }, + { + "name": "just-network", + "command": [ + "just", + "audit-network-json" + ], + "exit_code": 2, + "expected_exit_code": 2, + "log": "/private/tmp/communitymech-batch42/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-batch42/baseline-network.log", + "sha256": "c035fe6ed0bbf90371ab58d6557716c51eea79ac628e204173d70075f9efaa26", + "output_tail": " 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" + }, + { + "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-batch42/baseline-downstream.log", + "sha256": "eb0e9f249a60e320342c1661391c850fb784051618df1580a1f0185d2b9c3649", + "output_tail": "unar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml:285: downstream:\nkb/communities/Lunar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml:324: downstream:\nkb/communities/Emiliania_Phaeobacter_Dynamic_Interaction.yaml:143: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:311: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:365: downstream:\nkb/communities/GOM_Oil_Degrading_Consortium.yaml:119: downstream:\nkb/communities/GOM_Oil_Degrading_Consortium.yaml:160: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:125: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\nkb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:157: downstream:\nkb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:203: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:247: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:344: downstream:\nkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml:342: downstream:\nkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml:381: downstream:\nkb/communities/PMI_Variovorax_Thermotolerance_Collection.yaml:330: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:120: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:152: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:138: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:182: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:232: downstream:\nkb/communities/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/Salar_Atacama_Lithium_Brine_Community.yaml:295: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:339: downstream:\nkb/communities/Lake_Washington_Methane_Oxygen_Methylotroph_Community.yaml:336: downstream:\nkb/communities/Polaromonas_Vanadium_Reduction_Community.yaml:281: downstream:\nkb/communities/Polaromonas_Vanadium_Reduction_Community.yaml:401: downstream:\nkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml:223: downstream:\nkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml:135: downstream:\nkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml:177: downstream:\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:199: downstream:\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:267: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:207: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:249: downstream:\n" + } + ] + }, + "edison_dryruns": [ + { + "community": "Fucoidan_Seven_Degrader_Combinatorial_SynCom", + "dryrun_meta_sha256": "d9430a62ac20a1a78c662337e4db37e9d1b0e10da5a3dda08c935506101ab37d", + "dryrun_meta": { + "slug": "Fucoidan_Seven_Degrader_Combinatorial_SynCom", + "community_path": "kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "community_id": "CommunityMech:000449", + "job": "LITERATURE", + "job_id": "job-futurehouse-paperqa3", + "label": "causal", + "template_path": "templates/community_causal_graph_research.md", + "template_vars": { + "community_name": "Fucoidan Seven-Degrader Combinatorial SynCom", + "community_id": "CommunityMech:000449", + "community_file": "Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "community_slug": "Fucoidan_Seven_Degrader_Combinatorial_SynCom", + "community_category": "BIOTECHNOLOGY", + "ecological_state": "ENGINEERED", + "community_origin": "SYNTHETIC", + "description": "A defined seven-member marine bacterial SynCom assembled from the fucoidan degraders F12, F40, F56, F94, V25, V69, and V4 to quantify complementary fucose- and rare-sugar-monomer degradation of Fucus vesiculosus fucoidan. Sichert et al. constructed all 127 possible non-empty combinations of these degraders at equal OD600 in MBL medium with 0.2% fucoidan, measured total and monomer-specific degradation by liquid chromatography mass spectrometry, and resolved a functionally synergistic community landscape in which specialized degrader combinations reached up to 97.1% total degradation.", + "source_summary": "", + "environment_summary": "laboratory environment | ENVO:01001405 | The curated entity is a defined laboratory SynCom grown on purified brown-algal fucoidan in MBL medium.", + "taxonomy_summary": "Algibacter sp. AS12 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F12; rare-sugar specialist. | Algibacter lectus AS40 (Algibacter lectus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F40; rare-sugar specialist and member of the highest-degradation five-strain community. | Mariniflexile sp. AS56 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F56; generalist and member of the highest-degradation five-strain community. | Zobellia laminariae AS94 (Zobellia laminariae) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F94; rare-sugar specialist and member of the highest-degradation five-strain community. | Luteolibacter sp. AS25 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V25; fucose specialist. | Roseibacillus persicicus AS69 (Roseibacillus persicicus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V69; generalist and member of the highest-degradation five-strain community. | Lentimonas sp. CC4 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V4; fucose specialist and member of the highest-degradation five-strain community.", + "interaction_summary": "Complementary fucoidan monomer degradation - The SynCom's community-level degradation emerges from combining fucose specialists, rare-sugar specialists, and generalists whose enzyme repertoires unlock distinct fractions of the sulfated F. vesiculosus fucoidan substrate. | Seven-degrader synergistic function landscape - The complete non-empty panel of seven fucoidan degraders produced a smooth community-function landscape in which synergism remained common even among combinations approaching nearly complete degradation.", + "environmental_factor_summary": "", + "growth_media_summary": "MBL medium with 0.2% Fucus vesiculosus fucoidan - Seven-degrader combinations were inoculated at equal OD600 into MBL medium with 0.2% w/v Fucus vesiculosus fucoidan as the sole carbon source before five-day endpoint degradation analysis.", + "dataset_summary": "PRJNA996876 - https://www.ncbi.nlm.nih.gov/bioproject/PRJNA996876 | doi:10.6069/r2z3-7b10 - https://doi.org/10.6069/r2z3-7b10 | zenodo.19591477 - https://zenodo.org/records/19591477 | Nature article DOI - doi:10.1038/s41586-026-10980-z - https://doi.org/10.1038/s41586-026-10980-z | Sichert2025_Fucoidan GitHub workflow - EnvSysMicroLAB/Sichert2025_Fucoidan - https://github.com/EnvSysMicroLAB/Sichert2025_Fucoidan | Global ocean fucoidan-degrader GitHub analysis - tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis - https://github.com/tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis", + "evidence_summary": "PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4, along with a no-cell negative control. (Names the seven strains and the complete non-empty combinatorial panel.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v) fucoidan from F. vesiculosus as the sole carbon source. (Supports the equal-OD inoculation strategy and the MBL plus F. vesiculosus fucoidan medium.) | PMID:42649294: Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community F40, F56, V69, F94 and V4 (Supports the measured upper end of the community-function landscape.) | PMID:42649294: The only exception was G88, which increased degradation when paired with V69, but acted as an exploiter when paired with V4 and V25. (Supports G88 as a context-dependent degrader that was not carried into the seven-degrader full-combinatorial design.) | PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4 (Names the exact full-combinatorial panel, excluding G88 from the seven strains retained for the 127-community experiment.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F12 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1 (Supports the assembly accession for isolate_12.) | PMID:42649294: Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader (Maps isolate_12 to the F12 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F40 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1 (Supports the assembly accession for isolate_40.) | PMID:42649294: Algibacter lectus AS40 | Flavo40 | F40 | degrader (Maps isolate_40 to the F40 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F56 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1 (Supports the assembly accession for isolate_56.) | PMID:42649294: Mariniflexile sp. AS56 | Flavo56 | F56 | degrader (Maps isolate_56 to the F56 strain code and degrader role.) | PMID:42649294: V69 and F56 function as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F94 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1 (Supports the assembly accession for isolate_94.) | PMID:42649294: Zobellia laminariae AS94 | Flavo94 | F94 | degrader (Maps isolate_94 to the F94 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V25 as the Luteolibacter fucoidan degrader.) | PMID:42649294: isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1 (Supports the assembly accession for isolate_25.) | PMID:42649294: Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader (Maps isolate_25 to the V25 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are fucose-specialists (Supports the fucose-specialist role of V4 and V25.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V69 as the Roseibacillus fucoidan degrader.) | PMID:42649294: isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1 (Supports the assembly accession for isolate_69.) | PMID:42649294: Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader (Maps isolate_69 to the V69 strain code and degrader role.) | PMID:42649294: V69 and F56 function as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4 (Supports V4 as one of the seven full-combinatorial degrader members.) | PMID:42649294: LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1 (Supports the assembly accession for LCC_4.) | PMID:42649294: Lentimonas sp. CC4 | Verruco4 | V4 | degrader (Maps LCC_4 to the V4 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are fucose-specialists (Supports the fucose-specialist role of V4 and V25.) | PMID:42649294: V69 and F56 function as generalists, whereas V4, V25 and G88 are fucose-specialists and F12, F40 and F94 are rare-sugar specialists. (Supports division of the isolated degraders into fucose specialists, rare-sugar specialists, and generalists.) | PMID:42649294: access to complementary substrate fractions--rather than enzyme count--limits fucoidan degradation, such that complete breakdown emerges from interactions among metabolically complementary degraders. (Supports the source article's mechanism for community-level fucoidan breakdown.) | PMID:42649294: Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community F40, F56, V69, F94 and V4 (Supports the observed degradation range across the seven-member composition landscape.) | PMID:42649294: even when approaching near-complete degradation, 80% of interactions were still synergistic beyond what would be expected from simple resource partitioning (Supports persistence of synergism across high-degradation communities.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v) fucoidan from F. vesiculosus as the sole carbon source. (Supports medium identity, fucoidan concentration, inoculation OD, and working volume.) | PMID:42649294: Cultures were incubated for 5 days (n = 3 biological replicates), after which supernatants were collected for degradation analysis. (Supports the five-day triplicate endpoint for the combinatorial panel.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium (Supports batch assembly into 1.8 mL culture volumes.)" + }, + "query_chars": 15343, + "query": "# Microbial Community Causal-Graph Research Template\n\n## Target Community\n- **Community name:** Fucoidan Seven-Degrader Combinatorial SynCom\n- **Community id:** CommunityMech:000449\n- **Community file:** Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml\n- **Community category:** BIOTECHNOLOGY\n- **Ecological state:** ENGINEERED\n- **Community origin:** SYNTHETIC\n- **Environment:** laboratory environment | ENVO:01001405 | The curated entity is a defined laboratory SynCom grown on purified brown-algal fucoidan in MBL medium.\n- **Description:** A defined seven-member marine bacterial SynCom assembled from the fucoidan degraders F12, F40, F56, F94, V25, V69, and V4 to quantify complementary fucose- and rare-sugar-monomer degradation of Fucus vesiculosus fucoidan. Sichert et al. constructed all 127 possible non-empty combinations of these degraders at equal OD600 in MBL medium with 0.2% fucoidan, measured total and monomer-specific degradation by liquid chromatography mass spectrometry, and resolved a functionally synergistic community landscape in which specialized degrader combinations reached up to 97.1% total degradation.\n\n## Existing Record Context\n- **Taxa:** Algibacter sp. AS12 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F12; rare-sugar specialist. | Algibacter lectus AS40 (Algibacter lectus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F40; rare-sugar specialist and member of the highest-degradation five-strain community. | Mariniflexile sp. AS56 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F56; generalist and member of the highest-degradation five-strain community. | Zobellia laminariae AS94 (Zobellia laminariae) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member F94; rare-sugar specialist and member of the highest-degradation five-strain community. | Luteolibacter sp. AS25 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V25; fucose specialist. | Roseibacillus persicicus AS69 (Roseibacillus persicicus) - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V69; generalist and member of the highest-degradation five-strain community. | Lentimonas sp. CC4 - PRIMARY_DEGRADER - Equal-OD seven-degrader SynCom member V4; fucose specialist and member of the highest-degradation five-strain community.\n- **Known ecological interactions:** Complementary fucoidan monomer degradation - The SynCom's community-level degradation emerges from combining fucose specialists, rare-sugar specialists, and generalists whose enzyme repertoires unlock distinct fractions of the sulfated F. vesiculosus fucoidan substrate. | Seven-degrader synergistic function landscape - The complete non-empty panel of seven fucoidan degraders produced a smooth community-function landscape in which synergism remained common even among combinations approaching nearly complete degradation.\n- **Environmental factors:** \n- **Growth media / culture conditions:** MBL medium with 0.2% Fucus vesiculosus fucoidan - Seven-degrader combinations were inoculated at equal OD600 into MBL medium with 0.2% w/v Fucus vesiculosus fucoidan as the sole carbon source before five-day endpoint degradation analysis.\n- **Associated datasets / resources:** PRJNA996876 - https://www.ncbi.nlm.nih.gov/bioproject/PRJNA996876 | doi:10.6069/r2z3-7b10 - https://doi.org/10.6069/r2z3-7b10 | zenodo.19591477 - https://zenodo.org/records/19591477 | Nature article DOI - doi:10.1038/s41586-026-10980-z - https://doi.org/10.1038/s41586-026-10980-z | Sichert2025_Fucoidan GitHub workflow - EnvSysMicroLAB/Sichert2025_Fucoidan - https://github.com/EnvSysMicroLAB/Sichert2025_Fucoidan | Global ocean fucoidan-degrader GitHub analysis - tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis - https://github.com/tpriest0/Global_ocean_microbial_fucoidan_degrader_analysis\n- **Existing evidence:** PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4, along with a no-cell negative control. (Names the seven strains and the complete non-empty combinatorial panel.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v) fucoidan from F. vesiculosus as the sole carbon source. (Supports the equal-OD inoculation strategy and the MBL plus F. vesiculosus fucoidan medium.) | PMID:42649294: Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community F40, F56, V69, F94 and V4 (Supports the measured upper end of the community-function landscape.) | PMID:42649294: The only exception was G88, which increased degradation when paired with V69, but acted as an exploiter when paired with V4 and V25. (Supports G88 as a context-dependent degrader that was not carried into the seven-degrader full-combinatorial design.) | PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4 (Names the exact full-combinatorial panel, excluding G88 from the seven strains retained for the 127-community experiment.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F12 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_12 | 99.34 | 0.38 | high-quality draft | GCA_046736315.1 (Supports the assembly accession for isolate_12.) | PMID:42649294: Algibacter_B amylolyticus AS12 | Flavo12 | F12 | degrader (Maps isolate_12 to the F12 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F40 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_40 | 99.67 | 0.71 | high-quality draft | GCA_046736305.1 (Supports the assembly accession for isolate_40.) | PMID:42649294: Algibacter lectus AS40 | Flavo40 | F40 | degrader (Maps isolate_40 to the F40 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F56 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_56 | 99.67 | 1.96 | high-quality draft | GCA_046736295.1 (Supports the assembly accession for isolate_56.) | PMID:42649294: Mariniflexile sp. AS56 | Flavo56 | F56 | degrader (Maps isolate_56 to the F56 strain code and degrader role.) | PMID:42649294: V69 and F56 function as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports F94 as one of the Flavobacteriia fucoidan degraders.) | PMID:42649294: isolate_94 | 94.9 | 1.2 | high-quality draft | GCA_030553095.1 (Supports the assembly accession for isolate_94.) | PMID:42649294: Zobellia laminariae AS94 | Flavo94 | F94 | degrader (Maps isolate_94 to the F94 strain code and degrader role.) | PMID:42649294: F12, F40 and F94 are rare-sugar specialists. (Supports the rare-sugar specialist role of F12, F40, and F94.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V25 as the Luteolibacter fucoidan degrader.) | PMID:42649294: isolate_25 | 99.86 | 1.7 | high-quality draft | GCA_046736275.1 (Supports the assembly accession for isolate_25.) | PMID:42649294: Luteolibacter UBA1315 sp. AS25 | Verruco25 | V25 | degrader (Maps isolate_25 to the V25 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are fucose-specialists (Supports the fucose-specialist role of V4 and V25.) | PMID:42649294: We isolated 5 exploiters, 16 scavengers and 7 degraders, namely V25 (Luteolibacter), V69 (Roseibacillus), G88 (Pseudocolwellia) and four members of the Flavobacteriia (F12, F40, F56 and F94). (Supports V69 as the Roseibacillus fucoidan degrader.) | PMID:42649294: isolate_69 | 100 | 0.57 | high-quality draft | GCA_046736285.1 (Supports the assembly accession for isolate_69.) | PMID:42649294: Roseibacillus_A persicicus AS69 | Verruco69 | V69 | degrader (Maps isolate_69 to the V69 strain code and degrader role.) | PMID:42649294: V69 and F56 function as generalists (Supports the generalist role of F56 and V69.) | PMID:42649294: To systematically evaluate synergistic interactions in fucoidan degradation, we constructed all 127 possible combinations of the seven degraders F12, F40, F56, F94, V25, V69 and V4 (Supports V4 as one of the seven full-combinatorial degrader members.) | PMID:42649294: LCC_4 | 99.32 | 2.03 | high-quality draft | GCA_902728235.1 (Supports the assembly accession for LCC_4.) | PMID:42649294: Lentimonas sp. CC4 | Verruco4 | V4 | degrader (Maps LCC_4 to the V4 strain code and degrader role.) | PMID:42649294: V4, V25 and G88 are fucose-specialists (Supports the fucose-specialist role of V4 and V25.) | PMID:42649294: V69 and F56 function as generalists, whereas V4, V25 and G88 are fucose-specialists and F12, F40 and F94 are rare-sugar specialists. (Supports division of the isolated degraders into fucose specialists, rare-sugar specialists, and generalists.) | PMID:42649294: access to complementary substrate fractions--rather than enzyme count--limits fucoidan degradation, such that complete breakdown emerges from interactions among metabolically complementary degraders. (Supports the source article's mechanism for community-level fucoidan breakdown.) | PMID:42649294: Total degradation increased with community richness, ranging from 4% to a maximum of 97.1% in the 5-member community F40, F56, V69, F94 and V4 (Supports the observed degradation range across the seven-member composition landscape.) | PMID:42649294: even when approaching near-complete degradation, 80% of interactions were still synergistic beyond what would be expected from simple resource partitioning (Supports persistence of synergism across high-degradation communities.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium supplemented with 0.2% (w/v) fucoidan from F. vesiculosus as the sole carbon source. (Supports medium identity, fucoidan concentration, inoculation OD, and working volume.) | PMID:42649294: Cultures were incubated for 5 days (n = 3 biological replicates), after which supernatants were collected for degradation analysis. (Supports the five-day triplicate endpoint for the combinatorial panel.) | PMID:42649294: Each community was assembled by mixing strains at equal optical density (OD600) at 0.01 each and inoculating into 1.8 ml of MBL medium (Supports batch assembly into 1.8 mL culture volumes.)\n\n## Research Objective\n\nBuild a source-backed **causal interaction graph** for the microbial community\n**Fucoidan Seven-Degrader Combinatorial SynCom**, suitable for the `ecological_interactions` block of\n`kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml`. The graph's **nodes are mechanistic\ninteractions** and its **directed edges are causal links** (\"interaction A\nenables / drives / suppresses interaction B\"). Extract only relationships the\nprimary literature supports; do not infer edges that are not stated or directly\nimplied by an experiment.\n\n## Required Findings\n\n### 1. Interaction nodes (the vertices)\n\nFor each mechanistic interaction, report as a table row:\n\n- **name** \u2014 a short, unique interaction name (used as the node id and as the\n `target` of any causal edge that points to it).\n- **interaction_type** \u2014 one of: MUTUALISM, COMMENSALISM, CROSS_FEEDING,\n COMPETITION, PREDATION, SYNTROPHY, NICHE_PARTITIONING, STRAIN_COMPETITION,\n COLONIZATION_FACILITATION (or state \"OTHER: \" if none fit).\n- **scope** \u2014 PAIRWISE (organism\u2192organism) or COMMUNITY_LEVEL (emergent /\n abiotically driven, e.g. electrolysis-supplied H2). PAIRWISE **must** name a\n source taxon.\n- **source_taxon \u2192 target_taxon** \u2014 the directed pair (who acts on whom). Give\n NCBITaxon CURIEs + labels where resolvable.\n- **metabolites / biological_processes** \u2014 the exchanged compound(s) (CHEBI) and\n process(es) (GO) that mediate the interaction.\n- **direction / sign** \u2014 does the source **increase (+)** or **decrease (\u2212)** the\n target's growth/activity? State it explicitly.\n- **evidence** \u2014 a short **verbatim** snippet + its reference (PMID/DOI).\n\n### 2. Causal edges (the arcs)\n\nThis is the graph structure. For every ordered pair of nodes where the\nliterature supports a causal link, report a row:\n\n- **from** \u2014 upstream interaction name (a node from \u00a71).\n- **to** \u2014 downstream interaction name (a node from \u00a71).\n- **causal link** \u2014 one sentence: *how* the upstream interaction causes /\n enables / is required for / suppresses the downstream one (e.g. \"H2 produced\n by the syntrophic oxidation lowers pH2 enough for the acetogen to grow, which\n in turn supplies acetate to the methanogen\").\n- **evidence** \u2014 verbatim snippet + reference for the causal claim specifically\n (not just for the two endpoints existing).\n\nPrefer chains that a paper demonstrates by perturbation (knockout, substrate\nremoval, inhibitor, co-culture vs mono-culture), and say which experiment shows\neach edge. Flag any edge that is hypothesized rather than demonstrated.\n\n### 3. Grounding\n\n- CURIEs where available: NCBITaxon (taxa), CHEBI (metabolites), GO (processes),\n ENVO (environment), PMID / DOI (evidence).\n- Do not invent taxa, ontology ids, snippets, accession ids, or citations. If a\n node or edge lacks a citable source, omit it or mark it UNVERIFIED.\n\n## Output Format\n\nReturn a curation-focused report with:\n\n1. **Scope summary** \u2014 the consortium and the top-level function the causal graph\n explains (1\u20133 sentences).\n2. **Node table** \u2014 the interaction nodes (\u00a71 columns).\n3. **Edge table** \u2014 the directed causal edges (\u00a72 columns: from, to, causal\n link, evidence).\n4. **Adjacency / DOT sketch** \u2014 a compact `from -> to` edge list (or Graphviz DOT\n snippet) so the graph can be eyeballed; annotate edges with + / \u2212 sign.\n5. **Gaps & controversies** \u2014 edges the literature disputes, or plausible edges\n with no direct evidence (candidates for a `Discussion`/knowledge-gap note).\n6. **References** \u2014 every PMID/DOI cited, once.\n\nEach biological claim (node and edge) must carry a verbatim snippet and a\nreference. This report is reviewed by a curator before anything is written to\n`kb/communities/`.\n", + "submitted_at": "2026-10-06T10:59:28.433058+00:00", + "status": "dry-run", + "query_sha256": "b487e16a4b3e1226b5aea9532d0a9124753cc21bae8c4b9b8773d7a2caa2d754" + }, + "provider_job_submitted": false, + "provider_credits_spent": false, + "status": "awaiting_specific_credit_authorization" + }, + { + "community": "GLBRC_Exometabolite_Transwell_SynCom", + "dryrun_meta_sha256": "49fafb0a072c1ce333b3f0a0ba3a935b1633cc2470ee08c7e56dcd92309a6f24", + "dryrun_meta": { + "slug": "GLBRC_Exometabolite_Transwell_SynCom", + "community_path": "kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml", + "community_id": "CommunityMech:000091", + "job": "LITERATURE", + "job_id": "job-futurehouse-paperqa3", + "label": "causal", + "template_path": "templates/community_causal_graph_research.md", + "template_vars": { + "community_name": "GLBRC Exometabolite Transwell SynCom System", + "community_id": "CommunityMech:000091", + "community_file": "GLBRC_Exometabolite_Transwell_SynCom.yaml", + "community_slug": "GLBRC_Exometabolite_Transwell_SynCom", + "community_category": "BIOTECHNOLOGY", + "ecological_state": "ENGINEERED", + "community_origin": "SYNTHETIC", + "description": "A synthetic community assay system for probing chemically mediated microbial interactions through shared exometabolites.", + "source_summary": "", + "environment_summary": "laboratory environment | ENVO:01001405 | Filter plate Transwell synthetic community system for exometabolite-mediated microbial interactions.", + "taxonomy_summary": "exometabolite-interacting bacteria (Bacteria) - CROSS_FEEDER", + "interaction_summary": "Exometabolite-Mediated Interaction - N-acyl-L-homoserine lactone, antibacterial agent - Community members interact chemically through small molecules, extracellular enzymes, and antibiotics in shared medium. | AHL Diffusion and Violacein Induction - N-acyl-L-homoserine lactone - Chromobacterium violaceum Cv017 produces acyl-homoserine lactones that diffuse through the Transwell reservoir and induce quorum sensing, vioC transcription, and violacein production in the physically separated Cv026 biosensor.\n | Three-Member Exometabolite Time Series - antibacterial agent - A stationary-phase Burkholderia thailandensis, Chromobacterium violaceum and Pseudomonas syringae Transwell community produced a reproducible nonpolar exometabolite profile in which mass features were depleted, produced de novo, or enriched at early and mid time points.\n", + "environmental_factor_summary": "defined synthetic community design - Synthetic community members are cultured in a filter plate system that separates cells while allowing chemical exchange through shared medium. - Shared-reservoir chemical interactions are assayed using sensitive mass spectrometry.", + "growth_media_summary": "tryptic soy agar/broth (TSA50) - representative Transwell assay - Physically separated populations share a common medium reservoir; plates incubated with gentle shaking to homogenize member access to media and exometabolites.", + "dataset_summary": "", + "evidence_summary": "PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production in Cv026 (Demonstrates that a diffusible AHL signal moved across the filter-plate reservoir and activated the Cv026 quorum-sensing biosensor.\n) | PMID:29152587: We observed both decreases in existing features (clusters A and B) and production of new features over time (clusters D, E, and F) (Supports time-resolved exometabolite depletion and production in the physically separated three-member demonstration community.\n) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production in Cv026 (Anchors AHLs as the experimentally observed diffusible signal in the Transwell system.) | PMID:29152587: antibiotics, are assayed from the reservoir using sensitive mass spectrometry. (The snippet names antibiotics as one of the exometabolite classes assayed from the shared reservoir, anchoring the antibacterial agent compound class as a central exchanged exometabolite in this community.) | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: cultures in test tubes were incubated at 29\u00b0C at 200 rpm (Source states the 29 \u00b0C, 200 rpm cultivation conditions of the representative Transwell community assay.) | PMID:29152587: each well has a 0.22-\u03bcm-pore filter bottom and the plate fits into a shared medium reservoir (Source describes the Transwell filter-plate cultivation vessel with a shared medium reservoir.)" + }, + "query_chars": 8368, + "query": "# Microbial Community Causal-Graph Research Template\n\n## Target Community\n- **Community name:** GLBRC Exometabolite Transwell SynCom System\n- **Community id:** CommunityMech:000091\n- **Community file:** GLBRC_Exometabolite_Transwell_SynCom.yaml\n- **Community category:** BIOTECHNOLOGY\n- **Ecological state:** ENGINEERED\n- **Community origin:** SYNTHETIC\n- **Environment:** laboratory environment | ENVO:01001405 | Filter plate Transwell synthetic community system for exometabolite-mediated microbial interactions.\n- **Description:** A synthetic community assay system for probing chemically mediated microbial interactions through shared exometabolites.\n\n## Existing Record Context\n- **Taxa:** exometabolite-interacting bacteria (Bacteria) - CROSS_FEEDER\n- **Known ecological interactions:** Exometabolite-Mediated Interaction - N-acyl-L-homoserine lactone, antibacterial agent - Community members interact chemically through small molecules, extracellular enzymes, and antibiotics in shared medium. | AHL Diffusion and Violacein Induction - N-acyl-L-homoserine lactone - Chromobacterium violaceum Cv017 produces acyl-homoserine lactones that diffuse through the Transwell reservoir and induce quorum sensing, vioC transcription, and violacein production in the physically separated Cv026 biosensor.\n | Three-Member Exometabolite Time Series - antibacterial agent - A stationary-phase Burkholderia thailandensis, Chromobacterium violaceum and Pseudomonas syringae Transwell community produced a reproducible nonpolar exometabolite profile in which mass features were depleted, produced de novo, or enriched at early and mid time points.\n\n- **Environmental factors:** defined synthetic community design - Synthetic community members are cultured in a filter plate system that separates cells while allowing chemical exchange through shared medium. - Shared-reservoir chemical interactions are assayed using sensitive mass spectrometry.\n- **Growth media / culture conditions:** tryptic soy agar/broth (TSA50) - representative Transwell assay - Physically separated populations share a common medium reservoir; plates incubated with gentle shaking to homogenize member access to media and exometabolites.\n- **Associated datasets / resources:** \n- **Existing evidence:** PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production in Cv026 (Demonstrates that a diffusible AHL signal moved across the filter-plate reservoir and activated the Cv026 quorum-sensing biosensor.\n) | PMID:29152587: We observed both decreases in existing features (clusters A and B) and production of new features over time (clusters D, E, and F) (Supports time-resolved exometabolite depletion and production in the physically separated three-member demonstration community.\n) | PMID:29152587: AHLs from Cv017 diffused through wells to induce quorum sensing and violacein production in Cv026 (Anchors AHLs as the experimentally observed diffusible signal in the Transwell system.) | PMID:29152587: antibiotics, are assayed from the reservoir using sensitive mass spectrometry. (The snippet names antibiotics as one of the exometabolite classes assayed from the shared reservoir, anchoring the antibacterial agent compound class as a central exchanged exometabolite in this community.) | PMID:29152587: we describe a straightforward synthetic community system that can be used to interrogate exometabolite interactions among microorganisms. (Supports the defined synthetic community design and represented community context.) | PMID:29152587: cultures in test tubes were incubated at 29\u00b0C at 200 rpm (Source states the 29 \u00b0C, 200 rpm cultivation conditions of the representative Transwell community assay.) | PMID:29152587: each well has a 0.22-\u03bcm-pore filter bottom and the plate fits into a shared medium reservoir (Source describes the Transwell filter-plate cultivation vessel with a shared medium reservoir.)\n\n## Research Objective\n\nBuild a source-backed **causal interaction graph** for the microbial community\n**GLBRC Exometabolite Transwell SynCom System**, suitable for the `ecological_interactions` block of\n`kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml`. The graph's **nodes are mechanistic\ninteractions** and its **directed edges are causal links** (\"interaction A\nenables / drives / suppresses interaction B\"). Extract only relationships the\nprimary literature supports; do not infer edges that are not stated or directly\nimplied by an experiment.\n\n## Required Findings\n\n### 1. Interaction nodes (the vertices)\n\nFor each mechanistic interaction, report as a table row:\n\n- **name** \u2014 a short, unique interaction name (used as the node id and as the\n `target` of any causal edge that points to it).\n- **interaction_type** \u2014 one of: MUTUALISM, COMMENSALISM, CROSS_FEEDING,\n COMPETITION, PREDATION, SYNTROPHY, NICHE_PARTITIONING, STRAIN_COMPETITION,\n COLONIZATION_FACILITATION (or state \"OTHER: \" if none fit).\n- **scope** \u2014 PAIRWISE (organism\u2192organism) or COMMUNITY_LEVEL (emergent /\n abiotically driven, e.g. electrolysis-supplied H2). PAIRWISE **must** name a\n source taxon.\n- **source_taxon \u2192 target_taxon** \u2014 the directed pair (who acts on whom). Give\n NCBITaxon CURIEs + labels where resolvable.\n- **metabolites / biological_processes** \u2014 the exchanged compound(s) (CHEBI) and\n process(es) (GO) that mediate the interaction.\n- **direction / sign** \u2014 does the source **increase (+)** or **decrease (\u2212)** the\n target's growth/activity? State it explicitly.\n- **evidence** \u2014 a short **verbatim** snippet + its reference (PMID/DOI).\n\n### 2. Causal edges (the arcs)\n\nThis is the graph structure. For every ordered pair of nodes where the\nliterature supports a causal link, report a row:\n\n- **from** \u2014 upstream interaction name (a node from \u00a71).\n- **to** \u2014 downstream interaction name (a node from \u00a71).\n- **causal link** \u2014 one sentence: *how* the upstream interaction causes /\n enables / is required for / suppresses the downstream one (e.g. \"H2 produced\n by the syntrophic oxidation lowers pH2 enough for the acetogen to grow, which\n in turn supplies acetate to the methanogen\").\n- **evidence** \u2014 verbatim snippet + reference for the causal claim specifically\n (not just for the two endpoints existing).\n\nPrefer chains that a paper demonstrates by perturbation (knockout, substrate\nremoval, inhibitor, co-culture vs mono-culture), and say which experiment shows\neach edge. Flag any edge that is hypothesized rather than demonstrated.\n\n### 3. Grounding\n\n- CURIEs where available: NCBITaxon (taxa), CHEBI (metabolites), GO (processes),\n ENVO (environment), PMID / DOI (evidence).\n- Do not invent taxa, ontology ids, snippets, accession ids, or citations. If a\n node or edge lacks a citable source, omit it or mark it UNVERIFIED.\n\n## Output Format\n\nReturn a curation-focused report with:\n\n1. **Scope summary** \u2014 the consortium and the top-level function the causal graph\n explains (1\u20133 sentences).\n2. **Node table** \u2014 the interaction nodes (\u00a71 columns).\n3. **Edge table** \u2014 the directed causal edges (\u00a72 columns: from, to, causal\n link, evidence).\n4. **Adjacency / DOT sketch** \u2014 a compact `from -> to` edge list (or Graphviz DOT\n snippet) so the graph can be eyeballed; annotate edges with + / \u2212 sign.\n5. **Gaps & controversies** \u2014 edges the literature disputes, or plausible edges\n with no direct evidence (candidates for a `Discussion`/knowledge-gap note).\n6. **References** \u2014 every PMID/DOI cited, once.\n\nEach biological claim (node and edge) must carry a verbatim snippet and a\nreference. This report is reviewed by a curator before anything is written to\n`kb/communities/`.\n", + "submitted_at": "2026-10-06T10:59:33.823919+00:00", + "status": "dry-run", + "query_sha256": "65e425f7c3d41e12487524db64e17f52924cb198b312b058b2ea80d698257c74" + }, + "provider_job_submitted": false, + "provider_credits_spent": false, + "status": "awaiting_specific_credit_authorization" + } + ], + "reference_output_correction": "reports/causal_graph_review/reference-validator-correction-20261006-batch42.json", + "snippet_baseline_note": "Fucoidan retains 35 MATCH/15 MISMATCH; GENIA adds two MATCH and retains nine baseline RENDERING classifications; all three baseline/current comparisons are preserved in the correction receipt. No all-MATCH certification." +} diff --git a/tests/test_causal_review_batch42.py b/tests/test_causal_review_batch42.py new file mode 100644 index 000000000..1d7beebd6 --- /dev/null +++ b/tests/test_causal_review_batch42.py @@ -0,0 +1,178 @@ +"""Pin assay boundaries, source contradictions and incomplete graph expansion.""" + +import hashlib +from pathlib import Path + +import yaml + +ROOT = Path(__file__).resolve().parents[1] +LEDGER = ROOT / "reports/causal_graph_review/decisions/20261006-three-records-batch42.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_fucoidan_panel_is_not_a_single_mutualistic_mineralizing_community(): + _, docs = records() + complement, landscape = docs[0]["ecological_interactions"] + assert complement["evidence"][0]["evidence_source"] == "IN_VITRO" + assert "not measured CO2 mineralization" in complement["description"] + assert "without requiring contact or small-molecule cross-feeding" in complement["description"] + for boundary in [ + "five-member F40/F56/V69/F94/V4 subset", + "distinct from reciprocal fitness benefit", + "total inoculum varied with richness", + "mutualistic V69/G88 pair lies outside this panel", + ]: + assert boundary in landscape["description"] + for node in [complement, landscape]: + assert "interaction_type" not in node and "downstream" not in node + assert len(node["participating_taxa"]) == 7 + assert "NCBITaxon:3063958" not in {p["term"]["id"] for p in node["participating_taxa"]} + + +def test_fucoidan_v4_citation_artifact_is_resolved_without_rewriting_cache(): + ledger, docs = records() + alias = next(d for d in docs[0]["discussions"] if d["discussion_id"] == "v4_lentimonas_alias") + assert alias["status"] == "RESOLVED" + assert "superscript link to reference 3" in alias["rationale"] + source = ledger["records"][0]["source_review"]["PMID:42649294"] + assert "V4" in source["receipt"]["v4_citation_dom"] + assert 'aria-label="Reference 3"' in source["receipt"]["v4_citation_dom"] + assert "strain V43" in (ROOT / source["cache"]).read_text() + assert "original spreadsheet" in source["scope"] + + +def test_genia_predictions_do_not_become_measured_cross_feeding(): + _, docs = records() + potential, removal, dynamics = docs[1]["ecological_interactions"] + assert potential["description"].startswith("HYPOTHESIZED:") + assert potential["evidence"][0]["evidence_source"] == "COMPUTATIONAL" + assert potential["evidence"][0]["supports"] == "PARTIAL" + assert "downstream" not in potential and "biological_processes" not in potential + for node in [potential, removal, dynamics]: + assert "interaction_type" not in node + assert len(node["participating_taxa"]) == 9 + assert "93.1%" in removal["description"] and "87.1%" in removal["description"] + assert "distinct seven-day mixed-pollutant experiment" in removal["description"] + assert "not independent certification" in removal["description"] + + +def test_genia_retained_arrow_is_only_the_bounded_management_intervention(): + _, docs = records() + _, removal, dynamics = docs[1]["ecological_interactions"] + (arrow,) = dynamics["downstream"] + assert arrow["target"] == removal["name"] + assert arrow["description"].startswith("PARTIAL:") + assert "Dilution/remixing changes handling as well as ratios" in arrow["description"] + assert "lignin difference was not significant" in arrow["description"] + assert "relative DNA composition" in dynamics["description"] + assert dynamics["evidence"][-1]["supports"] == "PARTIAL" + + +def test_genia_source_arithmetic_is_not_certified_treatment_mass_balance(): + ledger, docs = records() + values = ledger["arithmetic_checks"] + assert abs(values["pfos_only_fluorine_mg_l"] - 11.9833) < 0.0001 + assert 10.33 < values["atrazine_nitrogen_mg_l"] < 10.34 + assert "true denominators remain unresolved" in values["limitations"] + rationale = docs[1]["discussions"][-1]["rationale"] + assert "PFOA/PFOS mixture" in rationale + assert "rather than a blanket impossibility claim" in rationale + assert ledger["open_nongraph_followups"] == [1468] + + +def test_transwell_umbrella_removed_without_combining_distinct_assays(): + ledger, docs = records() + reporter, timeseries = docs[2]["ecological_interactions"] + assert "Replated Cv026" in reporter["description"] + assert "separate three-member" in reporter["description"] + assert "977 features are not 977 identified metabolites" in timeseries["description"] + assert "identified separately by polar HILIC-MS/MS" in timeseries["description"] + assert "does not selectively establish the cause" in timeseries["description"] + assert [t["taxon_term"]["term"]["id"] for t in docs[2]["taxonomy"]] == ["NCBITaxon:2"] + for node in [reporter, timeseries]: + assert not any( + k in node for k in ["downstream", "source_taxon", "target_taxon", "participating_taxa"] + ) + (removed,) = ledger["records"][2]["removed_node_decisions"] + assert removed["node"] == "Exometabolite-Mediated Interaction" + assert "SC11,368" in docs[2]["discussions"][-1]["rationale"] + + +def test_batch42_pending_expansions_and_edison_dryruns_remain_explicit(): + ledger, _ = records() + assert [r["status"] for r in ledger["records"]] == [ + "needs_research", + "reviewed", + "needs_research", + ] + assert ledger["issues"] == [1466] + assert ledger["open_graph_research"] == [1465, 1467] + assert len(ledger["edison"]) == 2 + assert [j["dryrun_meta"]["query_chars"] for j in ledger["edison"]] == [15343, 8368] + for job in ledger["edison"]: + meta = job["dryrun_meta"] + assert meta["status"] == "dry-run" + assert hashlib.sha256(meta["query"].encode()).hexdigest() == meta["query_sha256"] + assert job["provider_job_submitted"] is job["provider_credits_spent"] is False + + +def test_batch42_dispositions_history_participants_and_source_receipts(): + ledger, docs = records() + assert ledger["independent_approval"] is False + assert ledger["base_commit"] == ledger["baseline_commit"] + assert ledger["issue_deduplication"]["ignored_hidden_local_search"] is True + assert sum(len(r["node_decisions"]) for r in ledger["records"]) == 7 + assert sum(len(r["removed_node_decisions"]) for r in ledger["records"]) == 1 + assert sum(len(r["retained_edge_decisions"]) for r in ledger["records"]) == 1 + assert sum(len(r["removed_edge_decisions"]) for r in ledger["records"]) == 1 + assert sum(len(r["renamed_nodes"]) for r in ledger["records"]) == 3 + for path, expected in ledger["reference_cache_original_hashes"].items(): + assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == expected + for row, doc in zip(ledger["records"], docs, strict=True): + 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 + canonical = {t["taxon_term"]["term"]["id"]: t["taxon_term"] for t in doc["taxonomy"]} + names = {n["name"] for n in doc["ecological_interactions"]} + for node in doc["ecological_interactions"]: + for term in node.get("participating_taxa", []): + expected = canonical[term["term"]["id"]] + assert term["term"] == expected["term"] + assert term["preferred_term"] == expected["preferred_term"] + assert all( + e["target"] in names and e["target"] != node["name"] + for e in node.get("downstream", []) + ) + assert all( + a.split("#", 1)[1] in names for a in doc["discussions"][-1].get("attaches_to", []) + ) + + +def test_batch42_reference_counter_correction_and_real_failure_are_preserved(): + import json + + receipt = json.loads( + ( + ROOT + / "reports/causal_graph_review/reference-validator-correction-20261006-batch42.json" + ).read_text() + ) + assert receipt["issue"] == 1469 + assert receipt["cli"]["counter_statement"] == "Total checks: {len(all_results)}" + assert "issues, not number of executed checks" in receipt["cli"]["interpretation"] + assert receipt["canary_exit"] == 0 and "5 passed" in receipt["canary_output"] + assert receipt["baseline_reference_exit"] == 1 + assert len(receipt["missing_snippets"]) == 14 + assert receipt["all_14_findings_match_supplement_sidecar"] is True + assert receipt["original_taxonomy_unchanged"] is True + assert receipt["baseline_snippet_audit"]["unchanged_counts"]["MISMATCH"] == 15 + assert receipt["baseline_snippet_audit"]["unchanged_counts"]["MATCH"] == 35 + assert "14" in receipt["initial_failed_attempt"]["results"][-1]["output_tail"] + for path, digest in receipt["historical_candidate_files"].items(): + assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == digest + ledger, _ = records() + assert "reports issue counts as Total checks" in " ".join(ledger["limitations"]) diff --git a/tests/test_participating_taxa.py b/tests/test_participating_taxa.py index 318bb6b2f..d955977f4 100644 --- a/tests/test_participating_taxa.py +++ b/tests/test_participating_taxa.py @@ -263,6 +263,8 @@ def test_a_curie_is_ambiguous_where_members_share_an_id(example): "Ewaste_Bioleaching_Consortium.yaml", "FOS_Lactobacillus_MinimalCore_GutLiver_SynCom.yaml", "Ferroplasma_Leptospirillum_Syntrophy.yaml", + "Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml", + "GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml", "Geobacter_Methanosarcina_DIET.yaml", "Ginseng_CL95_Rusty_Root_Rot_Biocontrol_SynCom.yaml", "Glutamicibacter_S11_Aquaculture_Nitrogen_Removal_SynCom.yaml",