Skip to content

Commit bbb50b0

Browse files
committed
Add markdown validation and fix parsing errors across skills
- Add scripts/validate-markdown.py for detecting markdown issues (HTML in tables, unclosed code blocks, missing separators, column mismatches) - Integrate validation into CI workflow and release checklist - Fix JQL syntax in epic planning workflows (Parent → "Epic Link") - Fix HTML comments breaking tables in code-reviewer, debugging-wizard - Add missing closing code fences in incident-chaos, mysql-tuning, postgresql-tuning - Escape pipe character in php-pro/modern-php-features.md table version bump v0.4.5 Closes #138
1 parent ab4c982 commit bbb50b0

21 files changed

Lines changed: 359 additions & 19 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
},
66
"metadata": {
77
"description": "Comprehensive skill pack for full-stack developers covering frameworks, workflows, and security",
8-
"version": "0.4.4"
8+
"version": "0.4.5"
99
},
1010
"plugins": [
1111
{
1212
"name": "fullstack-dev-skills",
1313
"source": "./",
1414
"description": "65 specialized skills for full-stack development: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing skills. Includes 9 project workflow commands for epic planning, discovery, execution, and retrospectives.",
15-
"version": "0.4.4",
15+
"version": "0.4.5",
1616
"author": {
1717
"name": "jeffallan",
1818
"email": "github@jeffallan"

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "fullstack-dev-skills",
3-
"version": "0.4.4",
3+
"version": "0.4.5",
44
"description": "Comprehensive skill pack with 65 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.",
55
"author": {
66
"name": "jeffallan",

.github/workflows/validate.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,8 @@ jobs:
2323
- name: Validate skills
2424
run: python scripts/validate-skills.py
2525

26+
- name: Validate markdown
27+
run: python scripts/validate-markdown.py --check
28+
2629
- name: Check docs in sync
2730
run: python scripts/update-docs.py --check

CHANGELOG.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,30 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.4.5] - 2026-02-05
9+
10+
### Added
11+
- Added "Mentioned in Awesome Claude Code" badge to README (closes #138)
12+
- Added Awesome Claude Code stat to social preview
13+
- Added `scripts/validate-markdown.py` for detecting markdown parsing errors
14+
- Checks for HTML comments breaking tables, unclosed code blocks, missing table separators, column count mismatches
15+
- Integrated into CI workflow and release checklist
16+
17+
### Fixed
18+
- Fixed markdown bold formatting rendering as raw `**` in README.md (#139)
19+
- Fixed minor syntax error in skill YAML frontmatter (#137)
20+
- Fixed incorrect JQL syntax in epic planning workflows (`Parent =``"Epic Link" =`)
21+
- Affected: `create-epic-plan`, `create-epic-discovery`, `WORKFLOW_COMMANDS.md`
22+
- Fixed markdown parsing errors across skill files:
23+
- Moved HTML comments above tables in `code-reviewer` and `debugging-wizard` skills
24+
- Added missing closing code fences in `incident-chaos`, `mysql-tuning`, `postgresql-tuning`
25+
- Escaped pipe character in `php-pro/modern-php-features.md` table
26+
27+
### Contributors
28+
- @hesreallyhim — Featured in Awesome Claude Code (#138)
29+
- @hesreallyhim — Fix formatting and links in README.md (#139)
30+
- @hesreallyhim — fix: minor syntax error in .md yaml frontmatter (#137)
31+
832
## [0.4.4] - 2026-02-03
933

1034
### Fixed
@@ -283,6 +307,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
283307
- Monitoring: Prometheus, Grafana, ELK, DataDog
284308
- Security: OWASP Top 10, SAST tools
285309

310+
[0.4.5]: https://github.com/jeffallan/claude-skills/compare/v0.4.4...v0.4.5
286311
[0.4.4]: https://github.com/jeffallan/claude-skills/compare/v0.4.3...v0.4.4
287312
[0.4.3]: https://github.com/jeffallan/claude-skills/compare/v0.4.2...v0.4.3
288313
[0.4.2]: https://github.com/jeffallan/claude-skills/compare/v0.4.1...v0.4.2

CLAUDE.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,30 @@ python scripts/validate-skills.py --help # Full usage
239239

240240
**Exit codes:** 0 = success (warnings OK), 1 = errors found
241241

242-
### 6. Final Verification
242+
### 6. Validate Markdown Syntax
243+
244+
**Critical:** Run markdown validation to catch parsing errors.
245+
246+
```bash
247+
python scripts/validate-markdown.py
248+
```
249+
250+
The script validates:
251+
- **HTML comments in tables** - Comments between table rows break parsing
252+
- **Unclosed code blocks** - Ensures all code fences are properly closed
253+
- **Missing table separators** - Tables require `|---|` row after header
254+
- **Column count consistency** - All table rows must have same column count
255+
256+
**Options:**
257+
```bash
258+
python scripts/validate-markdown.py --check # CI mode (exit code only)
259+
python scripts/validate-markdown.py --path FILE # Single file
260+
python scripts/validate-markdown.py --format json # JSON output for CI
261+
```
262+
263+
**Exit codes:** 0 = no issues, 1 = issues found
264+
265+
### 7. Final Verification
243266

244267
After running validation, manually verify:
245268

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
</p>
44

55
<p align="center">
6-
<a href="https://github.com/jeffallan/claude-skills"><img src="https://img.shields.io/badge/version-0.4.4-blue.svg?style=for-the-badge" alt="Version"/></a>
6+
<a href="https://github.com/jeffallan/claude-skills"><img src="https://img.shields.io/badge/version-0.4.5-blue.svg?style=for-the-badge" alt="Version"/></a>
77
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green.svg?style=for-the-badge" alt="License"/></a>
88
<a href="https://github.com/jeffallan/claude-skills"><img src="https://img.shields.io/badge/Claude_Code-Plugin-purple.svg?style=for-the-badge" alt="Claude Code"/></a>
99
<a href="https://github.com/jeffallan/claude-skills/stargazers"><img src="https://img.shields.io/github/stars/jeffallan/claude-skills?style=for-the-badge&color=yellow" alt="Stars"/></a>
@@ -15,6 +15,7 @@
1515
</p>
1616

1717
<p align="center">
18+
<a href="https://github.com/hesreallyhim/awesome-claude-code"><img src="https://awesome.re/mentioned-badge.svg" height="28" alt="Mentioned in Awesome Claude Code"/></a>
1819
<a href="https://github.com/Chat2AnyLLM/awesome-claude-skills/blob/main/FULL-SKILLS.md"><img src="https://img.shields.io/github/stars/Chat2AnyLLM/awesome-claude-skills?style=for-the-badge&label=awesome-claude-skills&color=brightgreen&logo=awesomelists&logoColor=white" alt="Awesome Claude Skills"/></a>
1920
<a href="https://github.com/BehiSecc/awesome-claude-skills"><img src="https://img.shields.io/github/stars/BehiSecc/awesome-claude-skills?style=for-the-badge&label=awesome-claude-skills&color=brightgreen&logo=awesomelists&logoColor=white" alt="Awesome Claude Skills (BehiSecc)"/></a>
2021
</p>

ROADMAP.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Current Status
44

5-
**Version:** v<!-- VERSION -->0.4.4<!-- /VERSION --> (Released January 2026)
5+
**Version:** v<!-- VERSION -->0.4.5<!-- /VERSION --> (Released January 2026)
66

77
- **<!-- SKILL_COUNT -->65<!-- /SKILL_COUNT --> Skills** across 12 domains
88
- **<!-- REFERENCE_COUNT -->359<!-- /REFERENCE_COUNT --> Reference Files** with progressive disclosure architecture
@@ -202,4 +202,4 @@ We welcome community input on the roadmap direction. Here's how you can contribu
202202

203203
---
204204

205-
*This roadmap is a living document and subject to change based on community feedback, technical constraints, and emerging priorities. Last updated: February 2026 (v0.4.4)*
205+
*This roadmap is a living document and subject to change based on community feedback, technical constraints, and emerging priorities. Last updated: February 2026 (v0.4.5)*

assets/social-preview.html

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,17 +92,31 @@
9292
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
9393
}
9494

95+
/* Title row */
96+
.title-row {
97+
display: flex;
98+
align-items: center;
99+
justify-content: space-between;
100+
margin-bottom: 24px;
101+
}
102+
95103
/* Title */
96104
.title {
97105
font-size: 92px;
98106
font-weight: 900;
99107
color: #ffffff;
100108
line-height: 1;
101-
margin-bottom: 24px;
109+
margin-bottom: 0;
102110
letter-spacing: -0.03em;
103111
text-shadow: 0 2px 40px rgba(0, 0, 0, 0.3);
104112
}
105113

114+
/* Awesome badge */
115+
.awesome-badge {
116+
height: 56px;
117+
filter: drop-shadow(0 4px 16px rgba(0, 0, 0, 0.3));
118+
}
119+
106120
/* Subtitle */
107121
.subtitle {
108122
font-size: 36px;
@@ -234,8 +248,11 @@
234248
<!-- Icon -->
235249
<!-- <div class="icon">⚡</div> -->
236250

237-
<!-- Title -->
238-
<h1 class="title">Claude Skills</h1>
251+
<!-- Title row with badge -->
252+
<div class="title-row">
253+
<h1 class="title">Claude Skills</h1>
254+
<img src="https://awesome.re/mentioned-badge.svg" class="awesome-badge" alt="Mentioned in Awesome Claude Code"/>
255+
</div>
239256

240257
<!-- Subtitle -->
241258
<h2 class="subtitle"><!-- SKILL_COUNT -->65<!-- /SKILL_COUNT --> Specialized Skills and <!-- WORKFLOW_COUNT -->9<!-- /WORKFLOW_COUNT --> workflows for Full-Stack Developers</h2>

assets/social-preview.png

88 KB
Loading

commands/project/discovery/create-epic-discovery.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ Creates tickets in target implementation epics
7676
## Phase 1: Question Extraction
7777

7878
1. **Read all Jira tickets** linked to epic `{Epic_Key}`
79-
- Use JQL query: `Parent = {Epic_Key}` to find all child tickets
79+
- Use JQL query: `"Epic Link" = {Epic_Key}` to find all child tickets
8080
- Extract acceptance criteria from each ticket
8181
- Identify ticket dependencies and relationships
8282
- Note any technical constraints mentioned

0 commit comments

Comments
 (0)