Skip to content

adstuart/azure-networking-docs-watch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Azure Networking Change Radar

Static, public-source radar for monitoring Azure Networking documentation and API/spec changes without cloning the full docs corpus.

Live radar: GitHub Pages for this repository.

The goal is a fast scan for busy Azure Networking specialists: open the page, see the small "Click now" queue, filter by product, and decide what deserves a diff or docs click.

  • Azure Networking MS Learn docs in MicrosoftDocs/azure-docs
  • Microsoft.Network REST/ARM specs in Azure/azure-rest-api-specs
  • selected Azure Architecture Center networking paths

It deliberately does not clone the docs repos or download large content sets. It uses GitHub APIs against scoped paths, enriches matching commits with scoped file/diff metadata, and stores compact static JSON.

Architecture

flowchart TD
    A[GitHub Actions schedule] --> B[fetch_updates.py]
    B --> C[Scoped source list]
    C --> D[MicrosoftDocs/azure-docs paths]
    C --> E[Azure/azure-rest-api-specs Microsoft.Network]
    C --> F[Architecture Center networking paths]
    B --> G[Commit details API for scoped hits]
    G --> H[Grouped product-aware changes]
    H --> I[Scoring, summaries, noise tiers]
    I --> J[data/events.json]
    I --> K[docs/events.json]
    I --> L[docs/index.html radar]
    L --> M[GitHub Pages / static browser view]
Loading

Current behaviour

  • Backfills the last 31 days by default and runs daily via GitHub Actions.
  • Groups duplicate source hits by repository commit so multi-product changes appear once.
  • Adds product facets such as Application Gateway, Azure Firewall, ExpressRoute, VPN Gateway, Private Link, Front Door, Network Watcher, and Microsoft.Network API.
  • Fetches scoped commit file/diff metadata and generates deterministic "what changed" summaries.
  • Scores each grouped change into:
    • Click now: high-impact behavior, lifecycle, support, API/spec, migration, security, or routing changes.
    • Worth a skim: likely useful if that product is relevant.
    • Background: visible but not in the default queue.
    • Housekeeping: hidden by default; still available via the UI toggle and JSON.
  • Provides product filters, search, tier filters, read-queue counts, source/diff links, and direct Learn links when a docs URL can be inferred.
  • Outputs:
    • data/events.json for machine use
    • docs/events.json for the static site
    • docs/index.html as the radar UI

Why GitHub Actions is enough for phase 1

This phase only needs public GitHub commit metadata and scoped per-commit diffs. GitHub Actions plus GitHub Pages is enough:

  • no Azure resources
  • no Microsoft-internal access
  • no persistent server
  • no database
  • no large document downloads

If phase 2 adds automated lab validation, then Azure or local runners may make sense. For now the monitor should stay cheap, auditable, and static.

Run locally

python scripts/fetch_updates.py --since-days 31
python -m http.server 8000 --directory docs

Open http://localhost:8000.

Use a GitHub token for higher API limits:

GITHUB_TOKEN=... python scripts/fetch_updates.py --since-days 31

Scope tuning

Edit config/sources.json to add/remove paths. Keep scope tight: prefer targeted product folders over whole repos.

Good additions:

  • a single MS Learn product folder
  • specification/network/resource-manager/Microsoft.Network/...
  • a specific Architecture Center networking folder

Avoid:

  • cloning azure-docs
  • broad repo-wide history scans
  • sending docs content to external summarisation services unless explicitly approved

Scoring tuning

The scoring model in scripts/fetch_updates.py is deterministic and auditable. Tune these regex groups when the radar is too noisy or misses something important:

  • NOISE_RE and MAINTENANCE_SUBJECT_RE suppress freshness, formatting, redirect, SVG, and generic support-page churn.
  • MEANINGFUL_RULES identifies support, behavior, lifecycle, release/version, connectivity, and operational signals.
  • HIGH_IMPACT_RE promotes Azure Networking terms that usually deserve a click, such as NSG support, default outbound access, FQDN tag port behavior, StandardV2 NAT Gateway, route maps, and retirement/deprecation language.

Phase 2 ideas

Not included yet:

  • optional semantic summarisation with explicit approval
  • deeper content-aware diffs across linked docs pages
  • issue creation for high-signal events
  • automated lab builder for newly exposed API/features
  • RSS/Teams notification delivery

Releases

No releases published

Packages

 
 
 

Contributors

Languages