diff --git a/Gemfile.lock b/Gemfile.lock
index 74f96469c95bac..417dd1e86c7e42 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -110,7 +110,7 @@ GEM
typhoeus (1.4.0)
ethon (>= 0.9.0)
unicode-display_width (2.5.0)
- webrick (1.8.1)
+ webrick (1.8.2)
yell (2.2.2)
zeitwerk (2.6.12)
diff --git a/metadata/git-mod-efc7be5ba874506b92c304fa69236167ebd2e82a.txt b/metadata/git-mod-d14fd5ed9616d1957ef6f84225762d6b467e69e7.txt
similarity index 99%
rename from metadata/git-mod-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
rename to metadata/git-mod-d14fd5ed9616d1957ef6f84225762d6b467e69e7.txt
index 8636a30910025f..4b43764b27e425 100644
--- a/metadata/git-mod-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
+++ b/metadata/git-mod-d14fd5ed9616d1957ef6f84225762d6b467e69e7.txt
@@ -1,3 +1,154 @@
+GTN_GTN:1727436959
+
+topics/genome-annotation/tutorials/amr-gene-detection/tutorial.md
+GTN_GTN:1727434118
+
+Gemfile.lock
+GTN_GTN:1727434087
+
+topics/assembly/tutorials/vgp_genome_assembly/tutorial.md
+topics/community/tutorials/sig_define/tutorial.md
+topics/dev/tutorials/community-tool-table/tutorial.md
+topics/dev/tutorials/tool-annotation/tutorial.md
+topics/dev/tutorials/tool-from-scratch/tutorial.md
+topics/dev/tutorials/tool-generators-advanced/tutorial.md
+topics/fair/tutorials/fair-data-registration/tutorial.md
+topics/fair/tutorials/ro-crate-galaxy-best-practices/tutorial.md
+topics/genome-annotation/tutorials/secondary-metabolite-discovery/tutorial.md
+topics/microbiome/tutorials/pathogen-detection-from-nanopore-foodborne-data/tutorial.md
+topics/single-cell/tutorials/GO-enrichment/tutorial.md
+topics/single-cell/tutorials/scrna-case_alevin-combine-datasets/tutorial.md
+topics/transcriptomics/tutorials/differential-isoform-expression/tutorial.md
+topics/variant-analysis/tutorials/beacon_cnv_query/tutorial.md
+topics/variant-analysis/tutorials/beaconise_1000hg/tutorial.md
+GTN_GTN:1727366404
+
+topics/variant-analysis/tutorials/sars-cov-2-variant-discovery/tutorial.md
+GTN_GTN:1727344222
+
+_layouts/event.html
+GTN_GTN:1727343522
+
+.github/workflows/ci-main.yml
+GTN_GTN:1727343258
+
+_config.yml
+assets/js/main.js
+assets/js/tutorial-mode.js
+GTN_GTN:1727342401
+
+topics/data-science/tutorials/sql-advanced/tutorial.md
+GTN_GTN:1727339855
+
+_plugins/jekyll-jsonld.rb
+GTN_GTN:1727337973
+
+_config.yml
+assets/js/main.js
+assets/js/tutorial-mode.js
+GTN_GTN:1727337768
+
+_config.yml
+faqs/galaxy/workflows_best_practices.md
+topics/fair/tutorials/ro-crate-galaxy-best-practices/img/workflow-entry.png
+topics/fair/tutorials/ro-crate-galaxy-best-practices/img/workflow-invocation.png
+topics/fair/tutorials/ro-crate-galaxy-best-practices/img/workflow-run-page.png
+topics/fair/tutorials/ro-crate-galaxy-best-practices/tutorial.md
+topics/fair/tutorials/ro-crate-submitting-life-monitor/tutorial.md
+GTN_GTN:1727337201
+
+topics/assembly/tutorials/assembly-decontamination/tutorial.md
+GTN_GTN:1727336779
+
+topics/microbiome/tutorials/dada-16S/tutorial.md
+GTN_GTN:1727335798
+
+topics/assembly/tutorials/mitochondrion-assembly/tutorial.md
+GTN_GTN:1727277279
+
+_plugins/jekyll-jsonld.rb
+_plugins/util.rb
+GTN_GTN:1727255537
+
+_layouts/event-track.html
+events/galaxy-academy-2024.md
+events/tracks/gta2024-assembly.md
+events/tracks/gta2024-bacterial-genomics.md
+events/tracks/gta2024-bycovid.md
+events/tracks/gta2024-microbiome.md
+events/tracks/gta2024-ml.md
+events/tracks/gta2024-proteomics.md
+events/tracks/gta2024-single-cell.md
+events/tracks/gta2024-transcriptomics.md
+GTN_GTN:1727255502
+
+bin/lint.rb
+GTN_GTN:1727253183
+
+bin/news.rb
+GTN_GTN:1727250881
+
+topics/admin/tutorials/interactive-tools/slides.html
+topics/admin/tutorials/interactive-tools/tutorial.md
+GTN_GTN:1727189728
+
+topics/microbiome/tutorials/diversity/tutorial.md
+GTN_GTN:1727129913
+
+topics/single-cell/tutorials/scrna-scanpy-pbmc3k/tutorial.md
+GTN_GTN:1727102130
+
+metadata/workflowhub.yml
+GTN_GTN:1727090456
+
+_includes/instance-dropdown.html
+_layouts/topic.html
+GTN_GTN:1727076651
+
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/2_example.png
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/BRT-Echinodermata_Crinoidea_Comatulida_Antedonidae_Florometra_mawsoni__pred_plot.png
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/JLN_param_example.png
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/Map.png
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/NA_example.png
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/advanced_out_example.png
+topics/ecology/tutorials/Ecoregionalization_tutorial/Images/pivot_file_example.png
+topics/single-cell/images/GO-enrichment/slides_images/components_5.png
+topics/single-cell/images/GO-enrichment/slides_images/enrichment_7.png
+topics/single-cell/images/GO-enrichment/slides_images/example1_16.png
+topics/single-cell/images/GO-enrichment/slides_images/example2.png
+topics/single-cell/images/GO-enrichment/slides_images/example2_int.png
+topics/single-cell/images/GO-enrichment/slides_images/example_6.png
+topics/single-cell/images/GO-enrichment/slides_images/go_3.png
+topics/single-cell/images/GO-enrichment/slides_images/go_enrichment_8.png
+topics/single-cell/images/GO-enrichment/slides_images/hierarchy_4.png
+topics/single-cell/images/GO-enrichment/slides_images/interpretation_18.png
+topics/single-cell/images/GO-enrichment/slides_images/m_17.png
+topics/single-cell/images/GO-enrichment/slides_images/ontology_2.png
+topics/single-cell/images/GO-enrichment/slides_images/purpose_19.png
+topics/single-cell/images/GO-enrichment/slides_images/roadmap_1.png
+topics/single-cell/images/GO-enrichment/slides_images/step1_9.png
+topics/single-cell/images/GO-enrichment/slides_images/step2_10.png
+topics/single-cell/images/GO-enrichment/slides_images/step3_11.png
+topics/single-cell/images/GO-enrichment/slides_images/step4_12.png
+topics/single-cell/images/GO-enrichment/slides_images/step5_13.png
+topics/single-cell/images/GO-enrichment/slides_images/step6_14.png
+topics/single-cell/images/GO-enrichment/slides_images/step7_15.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/dotplot_annotated_clusters.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/qc_violin_plot.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/umap_after_clustering.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/umap_annotated_clusters.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/umap_before_clustering.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/umap_plot_marker_genes.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/violin_plot_marker_genes.png
+topics/single-cell/images/scrna-scanpy-pbmc3k/violin_plot_rank_genes_groups_CST3_NKG7_PPBP.png
+topics/single-cell/images/workflow.png
+GTN_GTN:1727076602
+
+metadata/git-mod-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
+metadata/git-pub-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
+GTN_GTN:1727076570
+
+metadata/shortlinks.yaml
GTN_GTN:1727009190
topics/introduction/tutorials/galaxy-intro-101/tutorial.md
diff --git a/metadata/git-pub-efc7be5ba874506b92c304fa69236167ebd2e82a.txt b/metadata/git-pub-d14fd5ed9616d1957ef6f84225762d6b467e69e7.txt
similarity index 99%
rename from metadata/git-pub-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
rename to metadata/git-pub-d14fd5ed9616d1957ef6f84225762d6b467e69e7.txt
index e9dd4613da2a2c..ce0e8077daf8a9 100644
--- a/metadata/git-pub-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
+++ b/metadata/git-pub-d14fd5ed9616d1957ef6f84225762d6b467e69e7.txt
@@ -1,3 +1,10 @@
+GTN_GTN:1727337973
+
+A assets/js/tutorial-mode.js
+GTN_GTN:1727076602
+
+R099 metadata/git-mod-b5acaf862a6ef65d9660d4ea2d6152029e21f078.txt metadata/git-mod-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
+R099 metadata/git-pub-b5acaf862a6ef65d9660d4ea2d6152029e21f078.txt metadata/git-pub-efc7be5ba874506b92c304fa69236167ebd2e82a.txt
GTN_GTN:1726674476
A topics/single-cell/faqs/gtn-in-galaxy_mode-cs.md
diff --git a/topics/assembly/tutorials/vgp_genome_assembly/tutorial.md b/topics/assembly/tutorials/vgp_genome_assembly/tutorial.md
index 0c64418270c5f9..ef50d16210f0c6 100644
--- a/topics/assembly/tutorials/vgp_genome_assembly/tutorial.md
+++ b/topics/assembly/tutorials/vgp_genome_assembly/tutorial.md
@@ -548,34 +548,34 @@ Let's use gfastats to get a basic idea of what our assembly looks like. We'll ru
>
> 2. Rename outputs of `gfastats` step to as `Hap1 stats` and `Hap2 stats`
>
-> > > This would generate summary files that look like this (only the first six rows are shown):
-> > >
-> > > ```
-> > > Expected genome size 11747160
-> > > # scaffolds 0
-> > > Total scaffold length 0
-> > > Average scaffold length nan
-> > > Scaffold N50 0
-> > > Scaffold auN 0.00
-> > > ```
-> > >
-> > > Because we ran `gfastats` on hap1 and hap2 outputs of `hifiasm` we need to join the two outputs together for easier interpretation:
+> This would generate summary files that look like this (only the first six rows are shown):
+>
+> ```
+> Expected genome size 11747160
+> # scaffolds 0
+> Total scaffold length 0
+> Average scaffold length nan
+> Scaffold N50 0
+> Scaffold auN 0.00
+> ```
+>
+> Because we ran `gfastats` on hap1 and hap2 outputs of `hifiasm` we need to join the two outputs together for easier interpretation:
>
> 3. Run {% tool [Column join](toolshed.g2.bx.psu.edu/repos/iuc/collection_column_join/collection_column_join/0.0.3) %} with the following parameters:
> - {% icon param-files %} *"Input file"*: select `Hap1 stats` and the `Hap2 stats` datasets. Keep all other settings as they are.
>
> 4. Rename the output as `gfastats on hap1 and hap2 (full)`
>
-> > > This would generate a joined summary file that looks like this (only the first five rows are shown):
-> > >
-> > > ```
-> > > # gaps 0 0
-> > > # gaps in scaffolds 0 0
-> > > # paths 0 0
-> > > # segments 17 16
-> > > ```
-> > >
-> > > Now let's extract only relevant information by excluding all lines containing the word `scaffold` since there are no scaffolds at this stage of the assembly process (only contigs):
+> This would generate a joined summary file that looks like this (only the first five rows are shown):
+>
+> ```
+> # gaps 0 0
+> # gaps in scaffolds 0 0
+> # paths 0 0
+> # segments 17 16
+> ```
+>
+> Now let's extract only relevant information by excluding all lines containing the word `scaffold` since there are no scaffolds at this stage of the assembly process (only contigs):
>
> 5. Run {% tool [Search in textfiles](toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_grep_tool/1.1.1) %} with the following parameters:
> - {% icon param-files %} *"Input file"*: select `gfastats on hap1 and hap2 (full)`
@@ -756,35 +756,35 @@ Let's use gfastats to get a basic idea of what our assembly looks like. We'll ru
>
> 2. Rename outputs of `gfastats` step to as `Primary stats` and `Alternate stats`
>
-> > > This would generate summary files that look like this (only the first six rows are shown):
-> > >
-> > > ```
-> > > Expected genome size 11747160
-> > > # scaffolds 25
-> > > Total scaffold length 18519764
-> > > Average scaffold length 740790.56
-> > > Scaffold N50 813311
-> > > Scaffold auN 913050.77
-> > > ```
-> > >
-> > > Because we ran `gfastats` on Primary and Alternate outputs of `hifiasm` we need to join the two outputs together for easier interpretation:
+> This would generate summary files that look like this (only the first six rows are shown):
+>
+> ```
+> Expected genome size 11747160
+> # scaffolds 25
+> Total scaffold length 18519764
+> Average scaffold length 740790.56
+> Scaffold N50 813311
+> Scaffold auN 913050.77
+> ```
+>
+> Because we ran `gfastats` on Primary and Alternate outputs of `hifiasm` we need to join the two outputs together for easier interpretation:
>
> 3. Run {% tool [Column join](toolshed.g2.bx.psu.edu/repos/iuc/collection_column_join/collection_column_join/0.0.3) %} with the following parameters:
> - {% icon param-files %} *"Input file"*: select `Primary stats` and the `Alternate stats` datasets (these are from **Step 2** above). Keep all other setting as they are.
>
> 4. Rename the output as `gfastats on Pri and Alt (full)`
>
-> > > This would generate a joined summary file that looks like this (only five rows are shown):
-> > >
-> > > ```
-> > > # contigs 25 10
-> > > # dead ends . 16
-> > > # disconnected components . 7
-> > > # edges . 6
-> > > # gaps 0 0
-> > > ```
-> > >
-> > > Now let's extract only relevant information by excluding all lines containing the word `scaffold` since there are no scaffolds at this stage of the assembly process (only contigs):
+> This would generate a joined summary file that looks like this (only five rows are shown):
+>
+> ```
+> # contigs 25 10
+> # dead ends . 16
+> # disconnected components . 7
+> # edges . 6
+> # gaps 0 0
+> ```
+>
+> Now let's extract only relevant information by excluding all lines containing the word `scaffold` since there are no scaffolds at this stage of the assembly process (only contigs):
>
> 5. Run {% tool [Search in textfiles](toolshed.g2.bx.psu.edu/repos/bgruening/text_processing/tp_grep_tool/1.1.1) %} with the following parameters:
> - {% icon param-files %} *"Input file"*: select `gfastats on Pri and Alt (full)`
@@ -876,7 +876,7 @@ Despite BUSCO being robust for species that have been widely studied, it can be
> - {% icon param-file %} *"First genome assembly"*: `Primary contigs FASTA`
> - {% icon param-file %} *"Second genome assembly"*: `Alternate contigs FASTA`
>
-> > > (REMINDER: `Primary contigs FASTA` and `Alternate contigs FASTA` were generated [earlier](#gfa2fasta_solo))
+> (REMINDER: `Primary contigs FASTA` and `Alternate contigs FASTA` were generated [earlier](#gfa2fasta_solo))
>
{: .hands_on}
@@ -913,23 +913,24 @@ The first relevant parameter is the `Estimated genome size`.
>