Skip to content

chore(roadmap): git-native roadmap + gen-roadmap freshness check#785

Merged
Dumbris merged 1 commit into
mainfrom
chore/roadmap-tooling
Jul 1, 2026
Merged

chore(roadmap): git-native roadmap + gen-roadmap freshness check#785
Dumbris merged 1 commit into
mainfrom
chore/roadmap-tooling

Conversation

@Dumbris

@Dumbris Dumbris commented Jul 1, 2026

Copy link
Copy Markdown
Member

Summary

Adds a git-native roadmap so cross-spec epics/tasks, the dependency DAG, and execution status live in the repo (versioned, greppable, reviewable) instead of an external control plane.

Contents

  • roadmap.yaml — source of truth: epics → tasks with depends_on DAG edges, status, assignee, priority, and spec/pr/mcp links.
  • scripts/gen-roadmap.py (+ scripts/gen-roadmap wrapper) — renders ROADMAP.md: a Mermaid DAG (styled by status), an epic status table, and a per-spec progress table recomputed live from each specs/<NNN>/tasks.md. --check mode is a CI canary. Pure stdlib + PyYAML (already used by scripts/check-settings-parity.py).
  • .github/workflows/roadmap.yml — fails CI if ROADMAP.md is stale on roadmap-related changes.
  • .pre-commit-config.yaml — local roadmap-verify hook (same check; already caught a real staleness bug while authoring this PR).
  • docs/personal-edition-polish.md — durable one-page brief per vertical for the 5 personal-edition polish tracks.

Notes

Add a git-native roadmap so cross-spec epics/tasks/DAG/status live in-repo
instead of an external control plane.

- roadmap.yaml: source of truth (epics -> tasks, depends_on DAG, status,
  assignee, priority, spec/PR/mcp links)
- scripts/gen-roadmap.py (+ wrapper): renders ROADMAP.md (Mermaid DAG + status
  table + per-spec progress recomputed from specs/<NNN>/tasks.md); --check mode
  is a CI canary. Pure stdlib + PyYAML (already used by check-settings-parity).
- ROADMAP.md: generated view (do not hand-edit)
- .github/workflows/roadmap.yml: fail if ROADMAP.md is stale on roadmap changes
- .pre-commit-config.yaml: local roadmap-verify hook (same check)
- docs/personal-edition-polish.md: durable brief for the 5 personal-edition
  polish verticals

Does not overwrite specs/README.md (kept curated); the aggregate progress table
is rendered into ROADMAP.md instead.
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying mcpproxy-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: a620245
Status: ✅  Deploy successful!
Preview URL: https://e107f70a.mcpproxy-docs.pages.dev
Branch Preview URL: https://chore-roadmap-tooling.mcpproxy-docs.pages.dev

View logs

@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

📦 Build Artifacts

Workflow Run: View Run
Branch: chore/roadmap-tooling

Available Artifacts

  • archive-darwin-amd64 (28 MB)
  • archive-darwin-arm64 (25 MB)
  • archive-linux-amd64 (16 MB)
  • archive-linux-arm64 (14 MB)
  • archive-windows-amd64 (28 MB)
  • archive-windows-arm64 (25 MB)
  • frontend-dist-pr (0 MB)
  • installer-dmg-darwin-amd64 (21 MB)
  • installer-dmg-darwin-arm64 (19 MB)

How to Download

Option 1: GitHub Web UI (easiest)

  1. Go to the workflow run page linked above
  2. Scroll to the bottom "Artifacts" section
  3. Click on the artifact you want to download

Option 2: GitHub CLI

gh run download 28496663005 --repo smart-mcp-proxy/mcpproxy-go

Note: Artifacts expire in 14 days.

@Dumbris Dumbris merged commit 376d958 into main Jul 1, 2026
38 checks passed
@Dumbris Dumbris deleted the chore/roadmap-tooling branch July 1, 2026 06:47
Dumbris added a commit that referenced this pull request Jul 1, 2026
roadmap.yaml (from main via #785) references specs/077; regenerate the
rendered view so the per-spec badge (0/42, drafted) and the epic status row
reflect the spec landing in this PR. Keeps the roadmap-up-to-date CI check
green.

Related: Spec 077 (specs/077-scanner-simplification)
Dumbris added a commit that referenced this pull request Jul 1, 2026
…784)

* docs(security): Spec 077 scanner-simplification (spec/plan/tasks)

Planning package for making the deterministic offline detect engine the
always-on default scanner and demoting the Docker scanners + source
extraction to an opt-in deep scan that never blocks or degrades the baseline
verdict, with a single unified report.

- specs/077-scanner-simplification/spec.md: 4 user stories, 21 FRs, 8 SCs
- plan.md: constitution check (all 6 principles), structure, complexity tracking
- research.md: 8 grounded decisions (D1-D8) + alternatives
- data-model.md + contracts/: unified report + security config schema
- quickstart.md: 7 verification scenarios
- CLAUDE.md: Recent Changes entry (speckit agent-context)

Docs/spec-only; no code touched. Implementation follows via per-story PRs.

Related: Spec 077 (specs/077-scanner-simplification)

* chore(roadmap): regenerate ROADMAP.md to include Spec 077

roadmap.yaml (from main via #785) references specs/077; regenerate the
rendered view so the per-spec badge (0/42, drafted) and the epic status row
reflect the spec landing in this PR. Keeps the roadmap-up-to-date CI check
green.

Related: Spec 077 (specs/077-scanner-simplification)
@Dumbris

Dumbris commented Jul 1, 2026

Copy link
Copy Markdown
Member Author

Code Review — MCP-3801 (CEO / model-diverse fallback)

Verdict: ACCEPT

What was checked

  • roadmap.yaml schema — well-documented; id/title/status/depends_on/parked/spec/pr/mcp fields are consistent with generator usage. DAG edges are prerequisite→dependent as documented.
  • gen-roadmap.py — idempotent renderer; node_id() sanitises Mermaid IDs correctly; status_of() handles parked flag; --check mode does string equality diff (no whitespace drift); count_checkboxes regex matches [ ]/[x]/[X]; spec_progress skips missing tasks.md gracefully.
  • ROADMAP.md — generated output consistent with what script produces; banner clearly marks it generated.
  • CI workflow — triggered on correct paths; permissions: contents: read is appropriately minimal; 5-min timeout is reasonable.
  • Pre-commit hookpass_filenames: false correct for whole-repo check.
  • docs/personal-edition-polish.md — useful durable brief; no issues.

Minor observations (non-blocking)

  1. roadmap.yml uses actions/checkout@v6 (floating tag). Other workflows pin the SHA (df4cb1c… # v6.0.3). Recommend pinning for consistency — not a blocker.
  2. render_mermaid emits a class line even for empty status buckets — Mermaid ignores these, no functional issue.

Conclusion

Change is correct, well-scoped, and idempotent. No correctness bugs found. Safe to merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants