-
Notifications
You must be signed in to change notification settings - Fork 3
Feature/dashboard update 2026 07 18 #53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
MatMatt
wants to merge
70
commits into
main
Choose a base branch
from
feature/dashboard-update-2026-07-18
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
70 commits
Select commit
Hold shift + click to select a range
e924aca
Increase limits for LLM output tokens [skip ci]
mckeea 74713aa
dont edit date field on public release [skip ci]
mckeea ee7da4b
Update CLC+Core_User_Manual_Issue_4.0_v1.qmd
EEA-Tommy-Andersen b20dd4a
Render index.qmd serially (-P1) to avoid shared-file race (xargs 123)
mckeea 87918bc
Update CLC+Core_User_Manual_Issue_4.0_v1.qmd
EEA-Tommy-Andersen 45b3426
pdf2qmd tool implementation [skip ci]
mckeea 25bcc01
feat: add 15 newly converted products documents
MatMatt a0e15ba
Merge pull request #35 from eea/feat-new-docs
MatMatt 596be08
Update LLM cache and version history [skip ci]
actions-user 4013bde
fix: set categories to products and clean double nested quotes in titles
MatMatt ac3cd43
fix: simplify changelog list parsing filter to prevent panflute versi…
MatMatt 58d1096
fix: build container runner with panflute>=2.3.1 for Pandoc3 Typst AS…
MatMatt 92c4f59
Merge pull request #36 from eea/fix-panflute-container
MatMatt 97a8744
fix: force update container panflute library from inline action step
MatMatt 51eee96
fix: globally monkeypatch panflute RAW_FORMATS to support typst in as…
MatMatt a6eb02e
fix: add ruff noqa E402 to ignore top level monkeypatch imports
MatMatt 4641de3
fix: resolve hardcoded FIG_3 token reference in 2018 Technical Guidel…
MatMatt 7b4a41d
fix: temporarily move Ice products ATBD out of build to bypass Jupyte…
MatMatt bc8bd06
fix: correct Ice products grouped filename with products_ prefix in b…
MatMatt 88c68e2
fix: correct relative origin path inside DOCS directory in build move
MatMatt 224fb46
fix: sanitize stray at-sign handle to prevent bibtex bibliography err…
MatMatt 17eb5ee
fix: escape at-sign handle with a backslash to prevent bibtex citatio…
MatMatt 4c4cab6
feat: update metadata validation parameters and assign category produ…
MatMatt b444cac
chore: safely remove JRC files and clean up products staging folder
MatMatt cd324d1
fix: restore the official 1.0.0 audited small landscape features manu…
MatMatt c685628
Update LLM cache and version history [skip ci]
actions-user c2e0bc8
style: rename CLC+ to CLCplus in clcplus-core user manuals and media …
MatMatt 47a8d68
Update LLM cache and version history [skip ci]
actions-user 04fce1b
chore: rename and structure vegetation layers report to hrl_vegetatio…
MatMatt 35613ad
Update LLM cache and version history [skip ci]
actions-user b45de30
fix: correct unused footnote key 7 reference link in tree cover and f…
MatMatt 0626705
chore: remove the Coastal Zones Quality Assessment Report D3.2
MatMatt 98289ef
fix: format spatial coverage projcs coordinate table cell with a clea…
MatMatt c4fb96d
DOCS and building tools cleanup
mckeea ef12b97
versions cleanup for new documents [skip ci]
mckeea 6eec0de
html table simplifier for .llms.md files
mckeea cda6756
misc tools fixes [skip ci]
mckeea 597a315
feat: map reports category in build and packaging script
MatMatt 420dec0
docs: modernize and modularize README for generic fork-ready usage
MatMatt eadb91f
feat: agent guidance, category single-source, and local preview
mckeea 8ddb1c9
fix: single quote normalization in .qmd files [skip ci]
mckeea a660c56
CDSE Migration Status — weekly dashboard [non-browsable]
MatMatt 3e562bc
Update LLM cache and version history [skip ci]
actions-user d4ff063
CDSE Migration Status — fix Typst font-weight for PDF build
MatMatt e6d4315
Update LLM cache and version history [skip ci]
actions-user 32b7d0c
Update non-browsable doc map [skip ci]
actions-user 4a64bd7
CDSE Migration Status — Hot Spots → Global, remove 0%/100% sections
MatMatt af36deb
Update LLM cache and version history [skip ci]
actions-user d0052f6
CDSE Migration Status — Component/Total headers, % in progress bar, n…
MatMatt 136359e
docs: add CLMS → CDSE migration status dashboard
MatMatt e7f31a8
chore: weekly migration data update
MatMatt 7365f6b
chore: remove data JSON — hosted externally on copernicus-land/clms-c…
MatMatt f240574
Merge pull request #43 from eea/feature/dashboard-update-2026-07-16
MatMatt 46f73a2
Update LLM cache and version history [skip ci]
actions-user 1f7205a
fix: date must be YYYY-MM-DD, not 'today' for CI validator
MatMatt 81b2461
Update non-browsable doc map [skip ci]
actions-user 0070357
Merge pull request #44 from eea/fix/date-format-dashboard
MatMatt 2f8f8ef
fix: hide OJS code blocks (echo: false at document level)
MatMatt e883bda
fix: hide OJS code blocks in dashboard
MatMatt bf7b33a
fix: disable code-fold for OJS cells
MatMatt 566437e
fix: disable code-fold for OJS cells
MatMatt 628c49d
fix: hide code blocks via CSS (frontmatter gets stripped by pipeline)
MatMatt 0f1de50
fix: hide code blocks via CSS
MatMatt e39cf78
fix: hide code blocks via JS (CSS gets stripped by pipeline)
MatMatt a1449df
fix: hide code blocks via JS
MatMatt 8b04425
fix: hide code blocks via OJS (only content that survives pipeline)
MatMatt e9f2faa
fix: hide code blocks via OJS
MatMatt 657c617
chore: remove old CLMS_CDSE_Migration_Status.qmd (replaced by Dashboard)
MatMatt 083b8a0
chore: remove old status report
MatMatt 085e170
CDSE Migration Dashboard — weekly update 2026-07-18
MatMatt File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| # CLMS Technical Library — local PDF preview font setup. | ||
| # | ||
| # Makes the bundled Typst fonts (_meta/theme/typst-fonts/) discoverable so that | ||
| # rendering a DOCS/*.qmd to PDF — e.g. via the RStudio "Render" button — uses the | ||
| # CLMS fonts (Lato, Liberation Sans, JetBrains Mono) without installing anything | ||
| # system-wide. Quarto's typst format has no font-path option, so we set Typst's | ||
| # native TYPST_FONT_PATHS env var here; RStudio runs this file on session start, | ||
| # and the quarto render it launches inherits the variable. | ||
| # | ||
| # Preview only — the CI build (build-docs.sh) does not use this. | ||
| local({ | ||
| font_dir <- normalizePath( | ||
| file.path(getwd(), "_meta", "theme", "typst-fonts"), | ||
| mustWork = FALSE | ||
| ) | ||
| if (dir.exists(font_dir)) { | ||
| existing <- Sys.getenv("TYPST_FONT_PATHS") | ||
| paths <- if (nzchar(existing)) { | ||
| strsplit(existing, .Platform$path.sep, fixed = TRUE)[[1]] | ||
| } else { | ||
| character(0) | ||
| } | ||
| if (!(font_dir %in% paths)) { | ||
| Sys.setenv( | ||
| TYPST_FONT_PATHS = paste(c(font_dir, paths), collapse = .Platform$path.sep) | ||
| ) | ||
| message("CLMS: TYPST_FONT_PATHS set to bundled fonts for local PDF preview.") | ||
| } | ||
| } | ||
| }) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,65 @@ | ||
| #!/usr/bin/env python3 | ||
| """Strip residual block-level HTML wrappers from generated .llms.md sidecars. | ||
|
|
||
| The gfm writer + the simplify_tables_gfm.lua filter already linearize tables and | ||
| remove styling, but Quarto injects crossref float wrappers (`<div id="tbl-…">` … | ||
| `</div>`) and the occasional layout `<div style="overflow-x:…">` AFTER the pandoc | ||
| filters run, so they can't be removed at filter level. These bare wrapper lines are | ||
| pure noise in the plain-text companion the RAG ingests. This post-render pass removes | ||
| standalone block-level `<div>`/`</div>` lines (inline tags like <sub>/<sup> in prose | ||
| are left intact). | ||
|
|
||
| Idempotent. Usage: | ||
| python3 clean_llms_md.py _site # walk *.llms.md under a directory | ||
| python3 clean_llms_md.py a.llms.md b.md # specific files | ||
| """ | ||
|
|
||
| import re | ||
| import sys | ||
| from pathlib import Path | ||
|
|
||
| # A line that is ONLY an opening/closing <div …> (optionally indented). Block-level | ||
| # wrapper noise — never matches inline tags mid-prose. | ||
| _BARE_DIV = re.compile(r"^[ \t]*</?div\b[^>]*>[ \t]*$") | ||
|
|
||
|
|
||
| def clean_text(text: str) -> str: | ||
| out = [ln for ln in text.split("\n") if not _BARE_DIV.match(ln)] | ||
| cleaned = "\n".join(out) | ||
| # collapse the blank-line runs a removed wrapper can leave behind (3+ → 2) | ||
| cleaned = re.sub(r"\n{3,}", "\n\n", cleaned) | ||
| return cleaned | ||
|
|
||
|
|
||
| def clean_file(path: Path) -> bool: | ||
| original = path.read_text(encoding="utf-8") | ||
| cleaned = clean_text(original) | ||
| if cleaned != original: | ||
| path.write_text(cleaned, encoding="utf-8") | ||
| return True | ||
| return False | ||
|
|
||
|
|
||
| def _iter_targets(args): | ||
| for a in args: | ||
| p = Path(a) | ||
| if p.is_dir(): | ||
| yield from p.rglob("*.llms.md") | ||
| elif p.exists(): | ||
| yield p | ||
|
|
||
|
|
||
| def main(argv) -> int: | ||
| if not argv: | ||
| print(__doc__) | ||
| return 1 | ||
| changed = 0 | ||
| for path in _iter_targets(argv): | ||
| if clean_file(path): | ||
| changed += 1 | ||
| print(f"clean_llms_md: cleaned {changed} file(s)") | ||
| return 0 | ||
|
|
||
|
|
||
| if __name__ == "__main__": | ||
| sys.exit(main(sys.argv[1:])) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When this runner image is rebuilt,
/bin/shparses the unquoted>inpanflute>=2.3.1as stdout redirection to a file named=2.3.1, leaving pip to install an unversionedpanflutepackage instead of enforcing the minimum version. Quote the requirement (for example,'panflute>=2.3.1') so the dependency constraint actually reaches pip.Useful? React with 👍 / 👎.