Skip to content

Commit 67cd6d1

Browse files
authored
Merge pull request #15 from thxtech/feat/update-docs-skill
feat: add update-docs skill for syncing supplementary documents
2 parents 8748025 + 05f3579 commit 67cd6d1

7 files changed

Lines changed: 172 additions & 279 deletions

File tree

.claude/skills/analyze-oss/SKILL.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,7 @@ After writing the report, update the following documents to keep them in sync:
8989

9090
1. docs/ROADMAP.md: Add the new project to the appropriate difficulty level (Beginner / Intermediate / Advanced) based on architectural complexity. Also check if it fits any existing Learning Paths or warrants a new one.
9191

92-
2. docs/COMPARISONS.md: Check if the new project is similar to any existing comparison group (e.g., a new database should be considered for the Key-Value Stores or Database sections). If a good comparison exists, add a new section or extend an existing one.
93-
94-
3. docs/PATTERNS.md: Check if the new project uses any design patterns already documented (Plugin Architecture, WAL, Raft, Pipeline, etc.). Add the project to the relevant pattern tables with a brief description of its implementation.
92+
2. docs/PATTERNS.md: Check if the new project uses any design patterns already documented (Plugin Architecture, WAL, Raft, Pipeline, etc.). Add the project to the relevant pattern tables with a brief description of its implementation.
9593

9694
Run `bash scripts/audit-docs.sh` to verify consistency after updates.
9795

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
name: update-docs
3+
description: Update all supplementary documents (TABLE, ROADMAP, PATTERNS) to reflect the current state of oss/ reports. Use when the user asks to update, refresh, or sync documentation.
4+
allowed-tools: Bash(bash:*), Read, Write, Edit, Glob, Grep
5+
---
6+
7+
# Documentation Updater
8+
9+
Bring all supplementary documents in `docs/` up to date with the current `oss/` reports.
10+
11+
## Step 1: Run the audit
12+
13+
Run `bash scripts/audit-docs.sh` to identify gaps between `oss/` reports and documentation.
14+
15+
Save the output for reference throughout the remaining steps.
16+
17+
## Step 2: Regenerate TABLE.md
18+
19+
Run `bash scripts/generate-table.sh` to rebuild `docs/TABLE.md` from scratch. This is fully automated and always produces the correct result.
20+
21+
## Step 3: Update ROADMAP.md
22+
23+
Read `docs/ROADMAP.md` and identify projects missing from it (listed in the audit output).
24+
25+
For each missing project:
26+
1. Read its `oss/{project}/README.md` to understand its architectural complexity
27+
2. Determine difficulty level:
28+
- Beginner: focused scope, clean codebase, straightforward architecture, single-purpose
29+
- Intermediate: multiple subsystems, distributed components, sophisticated data structures
30+
- Advanced: massive-scale distributed systems, novel algorithms, complex consensus/scheduling
31+
3. Add a row to the appropriate difficulty table: `| [{name}](../oss/{project}/README.md) | {why} |`
32+
4. Check if the project fits any existing Learning Path. If so, add it there too.
33+
34+
Follow the existing writing style. Keep "Why Start Here" / "What You'll Learn" descriptions to one concise sentence.
35+
36+
## Step 4: Update PATTERNS.md
37+
38+
Read `docs/PATTERNS.md` to understand the documented patterns.
39+
40+
For each project NOT yet referenced in PATTERNS.md:
41+
1. Read its `oss/{project}/README.md`, especially Core Components and Key Design Decisions
42+
2. Identify which documented patterns the project uses (Plugin Architecture, Pipeline, Event-Driven, WAL, LSM-Tree, Raft, MVCC, Middleware, Work-Stealing, Declarative Reconciliation, Actor Model, Distributed Snapshots, Content-Addressable Storage)
43+
3. Add a row to each matching pattern table: `| [{name}](../oss/{project}/README.md) | {implementation details} |`
44+
4. If the project uses a pattern not yet documented and at least 3 projects share it, create a new pattern section
45+
46+
Keep implementation details concise (2-3 sentences) and specific to the project. Reference actual module names, interfaces, or techniques.
47+
48+
## Step 5: Verify
49+
50+
Run `bash scripts/audit-docs.sh` again and confirm:
51+
- TABLE.md: 0 errors
52+
- ROADMAP.md: 0 warnings (all projects covered)
53+
- PATTERNS.md: coverage improved
54+
55+
## Rules
56+
57+
- Write entirely in English
58+
- Do NOT use markdown bold syntax (`**`) anywhere
59+
- Follow the existing format and writing style of each document
60+
- Use relative links: `../oss/{project}/README.md`
61+
- Do not add projects that do not exist under `oss/`
62+
- Prioritize accuracy over coverage. If unsure about a project's patterns or difficulty, read its report first

.github/workflows/audit-docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
with:
3939
script: |
4040
const output = process.env.AUDIT_OUTPUT;
41-
const body = `## Documentation Audit Report\n\n\`\`\`\n${output}\n\`\`\`\n\nPlease update the supplementary documents (docs/ROADMAP.md, docs/COMPARISONS.md, docs/PATTERNS.md) for new projects.\n\nRun \`bash scripts/audit-docs.sh\` locally to check.`;
41+
const body = `## Documentation Audit Report\n\n\`\`\`\n${output}\n\`\`\`\n\nPlease update the supplementary documents (docs/ROADMAP.md, docs/PATTERNS.md) for new projects.\n\nRun \`bash scripts/audit-docs.sh\` locally to check.`;
4242
github.rest.issues.createComment({
4343
issue_number: context.issue.number,
4444
owner: context.repo.owner,

0 commit comments

Comments
 (0)