Skip to content

Instantly share code, notes, and snippets.

View jwmatthews's full-sized avatar

John Matthews jwmatthews

View GitHub Profile
$ time ./build.sh
PatternFly Tools Builder
========================
[INFO] Checking build prerequisites...
[INFO] All build prerequisites satisfied
[INFO] Host platform: Mac_arm64
Select target platform:

Overview

Steps

git remote add pranavgaikwad https://github.com/pranavgaikwad/semver-analyzer.git
git fetch pranavgaikwad
git checkout -b pranav/addBuildScripts pranavgaikwad/feat/addBuildScripts
export SEMVER_REPO_BRANCH=feat/addBuildScripts
export SEMVER_REPO_URL=https://github.com/pranavgaikwad/semver-analyzer.git
./build.sh

Onboarding Guide

Welcome to the PatternFly MCP Server codebase. This guide will help you understand what this project does, how it's organized, and how to navigate it confidently.

What is this project?

This is a Model Context Protocol (MCP) server that gives AI assistants (like Claude, Copilot, etc.) structured access to PatternFly design system documentation, component schemas, and guidelines. Think of it as a smart, searchable library that an LLM can query to get accurate PatternFly information while helping developers write code.

In practical terms: when a developer using an AI assistant asks "how do I use the PatternFly Button component?", this server provides the AI with the actual PatternFly docs and JSON schemas rather than relying on potentially outdated training data.

Deep Dive: Quarkus Agent MCP Server — Information Architecture

Overview

This MCP server provides 22 tools across 7 classes that help AI agents build Quarkus applications. The Quarkus-specific information it delivers comes from 6 distinct sources, each gathered differently.


Source 1: Extension Skills (SKILL.md files embedded in JARs)

@jwmatthews
jwmatthews / DexHorthyKeyFindings.md
Created May 12, 2026 20:43
Dex Horthy: Key Findings on Agentic & Context Engineering

Dex Horthy: Key Findings on Agentic & Context Engineering

The Central Thesis: Context is the only control surface

LLMs are stateless and non-deterministic. Every decision an agent makes is determined entirely by the tokens currently in its context window. The implication is stark: better tokens in, better tokens out. And critically, more tokens does not mean better outcomes. DEV Community

The "Dumb Zone"

Performance degrades beyond roughly 40% context utilization. As context usage grows, model quality degrades, often beginning around 40% of the window depending on task complexity. Common culprits: large tool outputs (JSON blobs, UUIDs, logs), unfiltered file dumps, long correction-loop histories, and MCPs dumping irrelevant data. Once you're in the dumb zone, model quality doesn't matter. Alexlavaee | [DEV Community](https://dev.to/

<!DOCTYPE html><html lang="en-US"><head><title>semver-analyzer &amp; fix-engine</title><meta property="og:title" content="semver-analyzer &amp; fix-engine"><meta charset="UTF-8"><meta name="viewport" content="width=device-width,height=device-height,initial-scale=1.0"><meta name="apple-mobile-web-app-capable" content="yes"><meta http-equiv="X-UA-Compatible" content="ie=edge"><meta property="og:type" content="website"><meta name="twitter:card" content="summary"><style>@media screen{body[data-bespoke-view=""] .bespoke-marp-parent>.bespoke-marp-osc>button,body[data-bespoke-view=next] .bespoke-marp-parent>.bespoke-marp-osc>button,body[data-bespoke-view=overview] button.bespoke-marp-overview-close,body[data-bespoke-view=presenter] .bespoke-marp-presenter-container .bespoke-marp-presenter-info-container .bespoke-marp-presenter-info-page-area .bespoke-marp-presenter-info-page,body[data-bespoke-view=presenter] .bespoke-marp-presenter-container .bespoke-marp-presenter-info-container button,body[data-bespoke-view=presen

PR #17 Review: fix-guidance alignment bug

PR: konveyor-ecosystem/semver-analyzer#17 Title: fix: co-generate fix guidance entries with rules to fix alignment bug Branch: fix/fix-guidance-alignment-bug Files changed: 3 (crates/ts/src/konveyor.rs, crates/ts/src/konveyor_v2.rs, src/main.rs) Review date: 2026-05-07


Analysis: crates/ts/src/konveyor.rs

Purpose

This file is the TypeScript-specific Konveyor rule generator for the semver-analyzer project. It transforms a structured analysis report (AnalysisReport<TypeScript>) — which describes breaking API changes, behavioral changes, and manifest changes between two versions of a TypeScript/React component library — into machine-readable Konveyor rules and fix guidance that downstream tooling (Kantra) uses to detect and auto-fix migration issues in consumer codebases.

In concrete terms: given a diff between, say, PatternFly v5 and v6, this module produces YAML rule files that tell a static analysis engine "if a consumer imports <Modal> from @patternfly/react-core, flag it and provide this migration message."


What Was Filtered Out
The new fix-guidance.yaml went from 4,065 entries to 431 by filtering out all non-semver rules. Here's the breakdown:
┌──────────────────────────────────────┬───────────┬───────────┬─────────────────────────────────────────────────┐
│ Category │ Old Count │ New Count │ Status │
├──────────────────────────────────────┼──────────────────┼───────────┼─────────────────────────────────────────────────┤
│ semver-* (API .d.ts changes) │ ~3,100 │ 431 │ Kept (deduplicated — old had -group-N variants) │
├──────────────────────────────────────┼──────────────────┼───────────┼─────────────────────────────────────────────────┤
│ sd-cf-* (composition/hierarchy) │ 180 │ 0 │ Dropped │

Container build and run of semver workflow

Prereqs

Install Node 18 and Node 20 (assumes nvm)

  • nvm install 18 && nvm exec 18 bash -c 'export NODE_ENV=development && corepack enable'
  • nvm install 20 && nvm exec 20 bash -c 'export NODE_ENV=development && corepack enable'

corepack enable

  • It is important you have run the above with corepack enable for the node versions used