## Summary - Introduce a standalone Python roadmap validator with a CLI entry point, modular validation pipeline, and GitHub Actions wiring so roadmap content can be linted locally and in CI. - Provide reusable validation primitives for path resolution, front-matter parsing, identity checks, task parsing, catalog enforcement, and template adherence. - Document usage, configuration, and workflow behaviour to make the validator approachable for contributors. ## Validator Details - **Core tooling** - Added the `tools/roadmap_validator/` package with `validate.py` (CLI), `validator.py` (orchestration), and helper modules (`tasks.py`, `identity.py`, `paths.py`, `constants.py`, `issues.py`). - CLI supports directory/file targets, skips default filenames, emits GitHub annotations, and integrates optional substring filtering - README explains features, environment variables, and development guidance. - **Catalog and template enforcement** - `catalog.py` verifies each allowed content unit has `index.md` and `preview.md`, confirms roadmap entries appear under the proper quarter/area, and flags stale or missing links. - `templates.py` enforces template basics: front matter completeness, `## Description` ordering/content, template placeholder cleanup, and task section detection. - **Task validation** - `tasks.py` checks required metadata (`owner`, `status`, `start-date`, `end-date`), date formats, populated descriptions/deliverables, TODO markers, tangible deliverable heuristics, and `fully-qualified-name` prefixes. - **Workflow integration** - `.github/workflows/roadmap-validator.yml` runs the validator on pushes and manual dispatch, installs dependencies, scopes validation to changed Markdown, and surfaces findings via GitHub annotations. ## Existing Roadmap Updates - Normalised 2025q4 commitments across Web, DST, QA, SC, and other units by filling in missing descriptions, deliverables, schedule notes, recurring task statuses, and maintenance tasks. - Added tasks where absent, removed remaining template placeholders, aligned fully qualified names, and ensured roadmap files conform to the new validator checks. ## Testing ```bash python tools/roadmap_validator/validate.py *2025q4* ``` CI: `Roadmap Validator` workflow runs automatically on pushes/dispatch. --------- Co-authored-by: kaiserd <1684595+kaiserd@users.noreply.github.com>
Vac Roadmaps and Reports
Overview
This repository contains the aggregated technical roadmaps of Vac R&D Service Units. It is an attempt to provide easy access to what we're all actively working on, and how it's going.
In its current form, it is an implementation of a Quartz "mind-garden". This repository is built and served to https://roadmap.vac.co
Contribution
If you see a type or broken link, PRs are always welcome :) If there is information you'd like to see included that isn't here, create and issue :)
CI/CD
CI builds master and pushes to gh-pages branch, which is hosted at https://roadmap.vac.dev/.
The hosting is done using Caddy server with Git plugin for handling GitHub webhooks.
Information about deployed build can be also found in /build.json available on the website.
Using Obsidian
Quartz is created to serve a static site off of an Obsidian vault, and thus is the preferred way to manage content locally. In order for all it to function properly, a few things need to be done properly.
First and foremost, Quartz uses links references with content as the root directory, so when opening in Obsidian, open the content folder, and not the repo directory.
Then the following vault settings need to be configured
- under
Options --> Files and Links- enable
Automatically update internal links Link formatshould be set toAbsolute path in vault- enable
use Wikilinks
- enable
In order to use the templates in the Templates folder for auto populating commmon files,
- Install and enable
Templaterin the Community Plugins- set the
Templates foldertotemplates - enable
automatic jump to cursor - enable
Trigger Templater on new file creation - enable
Folder templates - assign whichever templates you want to be triggered when a new file is created in a given folder.
- set the
Refer the Templater documentation for how to create your own templates.