incitaciones 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/content/distilled/close/SKILL.md +3 -2
- package/content/distilled/implement-documentation/SKILL.md +29 -0
- package/content/distilled/implement-documentation/references/anti-patterns.md +35 -0
- package/content/distilled/implement-documentation/references/diataxis-implementation.md +31 -0
- package/content/distilled/implement-documentation/references/templates.md +115 -0
- package/content/distilled/implement-documentation/references/tooling-comparison.md +46 -0
- package/content/distilled/implement-documentation/references/versioning.md +31 -0
- package/content/distilled/park/SKILL.md +3 -2
- package/content/distilled/renew/SKILL.md +4 -3
- package/content/distilled/research-documentation/SKILL.md +29 -0
- package/content/distilled/research-documentation/references/checklist.md +58 -0
- package/content/distilled/research-documentation/references/llm-readiness.md +43 -0
- package/content/distilled/research-documentation/references/metrics.md +42 -0
- package/content/distilled/research-documentation/references/report-template.md +42 -0
- package/content/distilled/review-documentation/SKILL.md +49 -0
- package/content/distilled/review-documentation/references/ai-readiness-criteria.md +38 -0
- package/content/manifest.json +360 -11
- package/package.json +1 -1
- package/pi-package/skills/close/SKILL.md +3 -2
- package/pi-package/skills/implement-documentation/SKILL.md +18 -57
- package/pi-package/skills/implement-documentation/references/anti-patterns.md +35 -0
- package/pi-package/skills/implement-documentation/references/diataxis-implementation.md +31 -0
- package/pi-package/skills/implement-documentation/references/templates.md +115 -0
- package/pi-package/skills/implement-documentation/references/tooling-comparison.md +46 -0
- package/pi-package/skills/implement-documentation/references/versioning.md +31 -0
- package/pi-package/skills/park/SKILL.md +3 -2
- package/pi-package/skills/renew/SKILL.md +4 -3
- package/pi-package/skills/research-documentation/SKILL.md +19 -69
- package/pi-package/skills/research-documentation/references/checklist.md +58 -0
- package/pi-package/skills/research-documentation/references/llm-readiness.md +43 -0
- package/pi-package/skills/research-documentation/references/metrics.md +42 -0
- package/pi-package/skills/research-documentation/references/report-template.md +42 -0
- package/pi-package/skills/review-documentation/SKILL.md +45 -40
- package/pi-package/skills/review-documentation/references/ai-readiness-criteria.md +38 -0
- package/scripts/generate-pi-resources.mjs +122 -1
- package/content/distilled/implement-documentation.md +0 -68
- package/content/distilled/research-documentation.md +0 -79
- package/content/distilled/review-documentation.md +0 -44
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# Diátaxis Templates
|
|
2
|
+
|
|
3
|
+
One template per quadrant. Match the template to the quadrant identified in Step 1. The canonical theory is `content/research-documentation-frameworks.md`.
|
|
4
|
+
|
|
5
|
+
## Tutorial (learning-oriented, beginners)
|
|
6
|
+
|
|
7
|
+
Goal: build competency through a guided, safe experience. Show, do not lecture.
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
# [Getting Started with X]
|
|
11
|
+
|
|
12
|
+
**TL;DR:** [1-sentence outcome for human/AI]
|
|
13
|
+
|
|
14
|
+
## What You Will Learn
|
|
15
|
+
By the end you will have [concrete result]. No prior knowledge of [X] is assumed.
|
|
16
|
+
|
|
17
|
+
## Prerequisites
|
|
18
|
+
- [Prerequisite 1]
|
|
19
|
+
- [Prerequisite 2]
|
|
20
|
+
|
|
21
|
+
## Step 1: [Specific Result]
|
|
22
|
+
[Chunked, do-this-now instructions. Each step yields a visible result.]
|
|
23
|
+
|
|
24
|
+
## Step 2: [Specific Result]
|
|
25
|
+
[Chunked instructions.]
|
|
26
|
+
|
|
27
|
+
## Recap & Next Steps
|
|
28
|
+
You built [X]. Next, try [lateral link 1] or [lateral link 2].
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## How-to (task-oriented, assumes baseline competence)
|
|
32
|
+
|
|
33
|
+
Goal: answer a specific question directly. Minimal theory.
|
|
34
|
+
|
|
35
|
+
```markdown
|
|
36
|
+
# [Task-Focused Title]
|
|
37
|
+
|
|
38
|
+
**TL;DR:** [1-sentence summary for human/AI]
|
|
39
|
+
|
|
40
|
+
## Context & Prerequisites
|
|
41
|
+
This guide explains how to [Goal]. Before starting, ensure you have:
|
|
42
|
+
- [Prerequisite 1]
|
|
43
|
+
- [Prerequisite 2]
|
|
44
|
+
|
|
45
|
+
## [Action Step 1: Specific Result]
|
|
46
|
+
[Chunked instructions]
|
|
47
|
+
|
|
48
|
+
## [Action Step 2: Specific Result]
|
|
49
|
+
[Chunked instructions]
|
|
50
|
+
|
|
51
|
+
## Troubleshooting: Common Fail-States
|
|
52
|
+
| Symptom | Cause | Fix |
|
|
53
|
+
| :--- | :--- | :--- |
|
|
54
|
+
| [Error] | [Reason] | [Solution] |
|
|
55
|
+
|
|
56
|
+
## Further Exploration
|
|
57
|
+
- [Lateral Link 1] (Subject affinity)
|
|
58
|
+
- [Lateral Link 2] (Subject affinity)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Reference (information-oriented, experienced users)
|
|
62
|
+
|
|
63
|
+
Goal: fast, accurate facts. Scannable tables, no narrative filler.
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
# [X] Reference
|
|
67
|
+
|
|
68
|
+
**TL;DR:** [1-sentence summary for human/AI]
|
|
69
|
+
|
|
70
|
+
## [Function/Endpoint/Class Name]
|
|
71
|
+
|
|
72
|
+
**Signature:** `signature`
|
|
73
|
+
|
|
74
|
+
**Parameters:**
|
|
75
|
+
| Name | Type | Required | Description |
|
|
76
|
+
| :--- | :--- | :--- | :--- |
|
|
77
|
+
| [name] | [type] | yes/no | [description] |
|
|
78
|
+
|
|
79
|
+
**Returns:** [type and meaning]
|
|
80
|
+
|
|
81
|
+
**Errors:**
|
|
82
|
+
| Code | Meaning | Remediation |
|
|
83
|
+
| :--- | :--- | :--- |
|
|
84
|
+
| [code] | [meaning] | [fix] |
|
|
85
|
+
|
|
86
|
+
**Example:**
|
|
87
|
+
[Minimal, complete, runnable example]
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Explanation (understanding-oriented, the "why")
|
|
91
|
+
|
|
92
|
+
Goal: deepen knowledge; no specific task. Discussion, design rationale, trade-offs.
|
|
93
|
+
|
|
94
|
+
```markdown
|
|
95
|
+
# [Understanding X]
|
|
96
|
+
|
|
97
|
+
**TL;DR:** [1-sentence summary for human/AI]
|
|
98
|
+
|
|
99
|
+
## Why [X] Exists This Way
|
|
100
|
+
[Design rationale and history. No steps.]
|
|
101
|
+
|
|
102
|
+
## Key Concepts
|
|
103
|
+
- [Concept 1]: [definition and why it matters]
|
|
104
|
+
- [Concept 2]: [definition and how it relates to Concept 1]
|
|
105
|
+
|
|
106
|
+
## Trade-offs
|
|
107
|
+
| Approach | Pro | Con |
|
|
108
|
+
| :--- | :--- | :--- |
|
|
109
|
+
| [A] | [pro] | [con] |
|
|
110
|
+
| [B] | [pro] | [con] |
|
|
111
|
+
|
|
112
|
+
## Further Exploration
|
|
113
|
+
- [Lateral Link 1] (Subject affinity)
|
|
114
|
+
- [Lateral Link 2] (Subject affinity)
|
|
115
|
+
```
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Tooling Comparison & Docs-as-Code
|
|
2
|
+
|
|
3
|
+
Use in Step 5 when choosing a platform or setting up docs infrastructure. Platform selection is an implementation decision, not an audit finding. Source: `content/research-finding-library-docs-best-practices.md` (Section 6, Modern Tooling and Infrastructure).
|
|
4
|
+
|
|
5
|
+
## Platform comparison
|
|
6
|
+
|
|
7
|
+
| Platform | Best For | Stack | Key Strength |
|
|
8
|
+
| :--- | :--- | :--- | :--- |
|
|
9
|
+
| Docusaurus | Complex OSS docs, versioning | React/JS | Ecosystem, versioning, MDX |
|
|
10
|
+
| MkDocs (Material) | Python projects, simple setup | Python | Simplicity, polished theme |
|
|
11
|
+
| Sphinx | Python API reference | Python | Autodoc, multiple outputs |
|
|
12
|
+
| Read the Docs | OSS hosting, versioning | Agnostic | Free hosting, versioning |
|
|
13
|
+
| GitBook | Team knowledge bases | Agnostic | Editing UX, AI search |
|
|
14
|
+
| Mintlify | API docs, dev portals | Agnostic | Design, AI search, OpenAPI |
|
|
15
|
+
| Starlight | Performance-critical docs | Astro | Performance, accessibility |
|
|
16
|
+
| Nextra | Custom Next.js sites | React/Next.js | Customization, React components |
|
|
17
|
+
|
|
18
|
+
## How to choose
|
|
19
|
+
|
|
20
|
+
- Python ecosystem or simplicity: MkDocs / Sphinx.
|
|
21
|
+
- API reference that must stay synced to code: Sphinx autodoc, mkdocstrings, or TypeDoc.
|
|
22
|
+
- API docs with interactive playground: Mintlify.
|
|
23
|
+
- Complex OSS docs with versioning and i18n: Docusaurus.
|
|
24
|
+
- Performance and built-in accessibility: Starlight.
|
|
25
|
+
- Free open-source hosting with versioning: Read the Docs.
|
|
26
|
+
|
|
27
|
+
## Docs-as-code workflow
|
|
28
|
+
|
|
29
|
+
Write docs in plain text (Markdown/AsciiDoc/reST), store in Git, review through pull requests, publish through CI/CD. Core practices:
|
|
30
|
+
|
|
31
|
+
- Store docs in the same repository as the code.
|
|
32
|
+
- Write in plain text (Markdown dominates for developer docs).
|
|
33
|
+
- Review all doc changes through the same PR process as code.
|
|
34
|
+
- Automate builds and deployments via CI/CD (GitHub Actions, GitLab CI).
|
|
35
|
+
- Enforce quality through automation: Vale, markdownlint, link checkers (htmlproofer, lychee), spell checkers on every PR.
|
|
36
|
+
- Generate API reference from OpenAPI/Swagger to keep it synchronized.
|
|
37
|
+
|
|
38
|
+
## Specification-driven API docs
|
|
39
|
+
|
|
40
|
+
- **OpenAPI** is the standard for REST APIs (YAML/JSON). Use it to auto-generate interactive reference (Swagger UI, Redoc, Stoplight Elements), client SDKs, and mock servers, and to power AI agent tool manifests.
|
|
41
|
+
- **AsyncAPI** extends the approach to event-driven APIs (WebSockets, Kafka, MQTT).
|
|
42
|
+
- Prefer a **design-first** approach: write the spec before the code. This enables early collaboration, immediate mock servers, and ensures docs are never an afterthought.
|
|
43
|
+
|
|
44
|
+
## Interactive documentation
|
|
45
|
+
|
|
46
|
+
Place the interactive element directly adjacent to the relevant docs, not on a separate playground page. Live code playgrounds (CodeSandbox, StackBlitz), interactive API explorers (Swagger UI, Mintlify), and embedded REPLs reduce time-to-first-success.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Versioning & Changelog Strategy
|
|
2
|
+
|
|
3
|
+
Use in Step 5 when setting up versioned documentation. Source: `content/research-finding-library-docs-best-practices.md` (Section 2, Versioned Documentation Strategies).
|
|
4
|
+
|
|
5
|
+
## Version-tagged documentation
|
|
6
|
+
|
|
7
|
+
Each major release should have a corresponding docs version. Tools like Read the Docs, Docusaurus, and Sphinx provide built-in versioned docs so users can select the version matching their installed software.
|
|
8
|
+
|
|
9
|
+
## Version selector in the UI
|
|
10
|
+
|
|
11
|
+
A prominent version selector in navigation lets users switch versions. The current stable version is the default, with clear indicators when a user is viewing an older or pre-release version.
|
|
12
|
+
|
|
13
|
+
## Deprecation notices
|
|
14
|
+
|
|
15
|
+
When features are deprecated, update docs immediately with a deprecation notice, the version in which deprecation occurred, and a migration path to the replacement.
|
|
16
|
+
|
|
17
|
+
## Changelog as a first-class document
|
|
18
|
+
|
|
19
|
+
Treat the changelog as a primary artifact, not an afterthought. Link it prominently from the docs home page and update it as part of the release process. Link migration guides from the changelog entries that introduce breaking changes; highlight breaking changes prominently.
|
|
20
|
+
|
|
21
|
+
## Write version-agnostic content where possible
|
|
22
|
+
|
|
23
|
+
Conceptual and explanation content that does not change between versions should avoid version-specific references. This reduces maintenance burden and prevents confusion.
|
|
24
|
+
|
|
25
|
+
## Docs-as-code for version control
|
|
26
|
+
|
|
27
|
+
Store docs in the same Git repository as the code (or a closely linked one) so docs version alongside code. Pull requests for code changes include doc updates; CI/CD pipelines can enforce that docs are updated before a release merges.
|
|
28
|
+
|
|
29
|
+
## Canonical URLs
|
|
30
|
+
|
|
31
|
+
Versioned docs create a risk of duplicate-content search penalties. Use canonical URL tags pointing search engines to the current stable version of each page.
|
|
@@ -14,16 +14,17 @@ tools: Read, Write, Edit, Bash
|
|
|
14
14
|
|
|
15
15
|
Snapshot the current session's work on a project/area before switching context. This is NOT end-of-day — just a context switch.
|
|
16
16
|
|
|
17
|
-
Uses `$JOURNAL_PATH` (defaults to `~/dev/status`) for the daily log, and `~/.whisper/` for accumulated operational knowledge.
|
|
17
|
+
Uses `$JOURNAL_PATH` (defaults to `~/dev/status`) for the daily log journal, and `~/.whisper/` for accumulated operational knowledge. The log subdirectory defaults to `log/`; set `$JOURNAL_LOG_SUBDIR` to override (e.g. `areas/log` for the JORNAL layout).
|
|
18
18
|
|
|
19
19
|
## Steps
|
|
20
20
|
|
|
21
21
|
1. Get today's date and current time (`date +%Y-%m-%d`, `date +%H:%M`).
|
|
22
22
|
```bash
|
|
23
23
|
JOURNAL="${JOURNAL_PATH:-$HOME/dev/status}"
|
|
24
|
+
LOG_SUBDIR="${JOURNAL_LOG_SUBDIR:-log}"
|
|
24
25
|
```
|
|
25
26
|
|
|
26
|
-
2. Read today's log: `$JOURNAL/
|
|
27
|
+
2. Read today's log: `$JOURNAL/$LOG_SUBDIR/YYYY/YYYY-MM/YYYY-MM-DD.md`
|
|
27
28
|
If it doesn't exist, create it with the daily log template.
|
|
28
29
|
|
|
29
30
|
3. Review the conversation history to determine:
|
|
@@ -14,13 +14,14 @@ tools: Read, Write, Edit, Glob, Bash, Grep
|
|
|
14
14
|
|
|
15
15
|
Load focused context for a specific project or area to continue work.
|
|
16
16
|
|
|
17
|
-
Uses `$JOURNAL_PATH` (defaults to `~/dev/status`) for the daily log, and `~/.whisper/` for accumulated operational knowledge.
|
|
17
|
+
Uses `$JOURNAL_PATH` (defaults to `~/dev/status`) for the daily log journal, and `~/.whisper/` for accumulated operational knowledge. The log subdirectory defaults to `log/`; set `$JOURNAL_LOG_SUBDIR` to override (e.g. `areas/log` for the JORNAL layout).
|
|
18
18
|
|
|
19
19
|
## Steps
|
|
20
20
|
|
|
21
21
|
1. Pull the journal repo:
|
|
22
22
|
```bash
|
|
23
23
|
JOURNAL="${JOURNAL_PATH:-$HOME/dev/status}"
|
|
24
|
+
LOG_SUBDIR="${JOURNAL_LOG_SUBDIR:-log}"
|
|
24
25
|
cd "$JOURNAL" && git pull
|
|
25
26
|
```
|
|
26
27
|
|
|
@@ -43,13 +44,13 @@ Uses `$JOURNAL_PATH` (defaults to `~/dev/status`) for the daily log, and `~/.whi
|
|
|
43
44
|
|
|
44
45
|
3. Read the matched project or area file.
|
|
45
46
|
|
|
46
|
-
4. Read today's log (`$JOURNAL/
|
|
47
|
+
4. Read today's log (`$JOURNAL/$LOG_SUBDIR/YYYY/YYYY-MM/YYYY-MM-DD.md`).
|
|
47
48
|
If it doesn't exist, create it with the daily log template.
|
|
48
49
|
Scan for any earlier session entries related to this project/area today.
|
|
49
50
|
|
|
50
51
|
5. Search recent logs for context (last 3 days):
|
|
51
52
|
```bash
|
|
52
|
-
grep -rl "<slug>" "$JOURNAL"/
|
|
53
|
+
grep -rl "<slug>" "$JOURNAL"/"$LOG_SUBDIR"/YYYY/YYYY-MM/ 2>/dev/null | tail -3
|
|
53
54
|
```
|
|
54
55
|
Read any matches to understand recent session history.
|
|
55
56
|
|
|
@@ -6,80 +6,30 @@ metadata:
|
|
|
6
6
|
---
|
|
7
7
|
# Research Documentation Architecture
|
|
8
8
|
|
|
9
|
-
Audit
|
|
9
|
+
Audit existing documentation or plan a new suite using the Unified Frameworks for Technical Information Architecture.
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Core Rules
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
2. ✅ **DO:** Identify "Frankenbooks" (documents with mixed intent/quadrants).
|
|
15
|
-
3. ✅ **DO:** Map the "Snowflake" progression from Core Assertion to granular topics.
|
|
16
|
-
4. ✅ **DO:** Verify EPPO compliance (Does each page establish its own context?).
|
|
17
|
-
5. ❌ **DO NOT:** Start writing content yet; focus on architecture and gaps.
|
|
18
|
-
6. ❌ **DO NOT:** Suggest stylistic changes (focus on structural integrity).
|
|
13
|
+
- You are an architect, not a writer. Map structure and gaps; do not draft content.
|
|
19
14
|
|
|
20
|
-
##
|
|
15
|
+
## Procedure
|
|
21
16
|
|
|
22
|
-
|
|
17
|
+
1. Define the scope: identify the primary audience (novice vs. expert) and state the single-sentence "Core Assertion" (the value proposition). If existing docs have conflicting hooks, pick the most impactful or propose a synthesis.
|
|
18
|
+
2. Analyze existing content (if any): for each file determine its Diátaxis quadrant, EPPO status (standalone utility), and cognitive load. Use `references/checklist.md` for the completeness and accessibility items to check against.
|
|
19
|
+
3. Map the Snowflake outline: Core Assertion, Macro-Expansion, Component List, Topic Matrix by quadrant.
|
|
20
|
+
4. Identify gaps and friction: quadrant imbalance, structural plot-holes, and AI-readiness gaps. Use `references/llm-readiness.md` to assess `llms.txt`, MCP, RAG chunking, and dual-audience design. Use `references/metrics.md` to recommend measurement signals (TTFS, search analytics, coverage, freshness).
|
|
21
|
+
5. Produce the final research report using `references/report-template.md`.
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
- Identify the primary audience (Novice vs. Expert).
|
|
26
|
-
- State the "Core Assertion" (The single-sentence value proposition).
|
|
27
|
-
- **Legacy Conflict Resolution:** If existing documentation contains multiple, conflicting "hooks," identify the most impactful one or propose a synthesis for the new architecture.
|
|
23
|
+
## Rules
|
|
28
24
|
|
|
29
|
-
|
|
25
|
+
- Categorize every document into exactly one Diátaxis quadrant.
|
|
26
|
+
- Flag "Frankenbooks" (documents with mixed intent/quadrants).
|
|
27
|
+
- Verify EPPO compliance: does each page establish its own context?
|
|
28
|
+
- Do not start writing content; focus on architecture and gaps.
|
|
29
|
+
- Do not suggest stylistic changes; focus on structural integrity.
|
|
30
|
+
- The canonical theory lives in `content/research-documentation-frameworks.md`; the references here are operational excerpts that link back to it.
|
|
30
31
|
|
|
31
|
-
|
|
32
|
-
- **Quadrant:** (Tutorial | How-to | Reference | Explanation).
|
|
33
|
-
- **EPPO Status:** (Pass/Fail) Does it have standalone utility and context?
|
|
34
|
-
- **Cognitive Load:** Are there "walls of words" or missing labels?
|
|
32
|
+
## Related Skills
|
|
35
33
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
Expand the Core Assertion into a structural map:
|
|
39
|
-
1. **Core Assertion:** [1 sentence]
|
|
40
|
-
2. **Macro-Expansion:** [1 paragraph user journey]
|
|
41
|
-
3. **Component List:** [The "characters" of the system]
|
|
42
|
-
4. **Topic Matrix:** A list of proposed EPPO topics categorized by quadrant.
|
|
43
|
-
|
|
44
|
-
### Step 4: Identify Gaps and Friction
|
|
45
|
-
|
|
46
|
-
- **Quadrant Imbalance:** e.g., "Too much reference, not enough tutorials."
|
|
47
|
-
- **Structural Plot-holes:** Where does the user journey break?
|
|
48
|
-
- **AI-Readiness Gaps:** Missing `llms.txt`, poor semantic labeling.
|
|
49
|
-
|
|
50
|
-
### Step 5: Final Research Report
|
|
51
|
-
|
|
52
|
-
Output the audit/plan using the following template:
|
|
53
|
-
|
|
54
|
-
```markdown
|
|
55
|
-
# Documentation Research: [Project Name]
|
|
56
|
-
|
|
57
|
-
## 1. Executive Summary & Core Assertion
|
|
58
|
-
**Core Assertion:** [The one-sentence hook]
|
|
59
|
-
**Status:** [Summary of current architecture health]
|
|
60
|
-
|
|
61
|
-
## 2. Diátaxis Matrix
|
|
62
|
-
| Quadrant | Existing Topics | Proposed/Missing Topics |
|
|
63
|
-
| :--- | :--- | :--- |
|
|
64
|
-
| **Tutorial** | | |
|
|
65
|
-
| **How-to** | | |
|
|
66
|
-
| **Reference** | | |
|
|
67
|
-
| **Explanation** | | |
|
|
68
|
-
|
|
69
|
-
## 3. Snowflake Structural Map
|
|
70
|
-
- **Macro-Journey:** [Description]
|
|
71
|
-
- **Key Components:** [List]
|
|
72
|
-
|
|
73
|
-
## 4. EPPO & Cognitive Audit
|
|
74
|
-
- **Frankenbooks Found:** [List of files with mixed intent]
|
|
75
|
-
- **Context Gaps:** [Topics needing better orientation]
|
|
76
|
-
|
|
77
|
-
## 5. AI-Readiness Assessment
|
|
78
|
-
- [ ] `llms.txt` present?
|
|
79
|
-
- [ ] Explicit semantic labeling for RAG?
|
|
80
|
-
- [ ] MCP endpoints identified?
|
|
81
|
-
|
|
82
|
-
## 6. Recommended Next Steps
|
|
83
|
-
1. [Actionable structural change]
|
|
84
|
-
2. [Actionable topic creation]
|
|
85
|
-
```
|
|
34
|
+
- `implement-documentation` — write topics from this audit.
|
|
35
|
+
- `review-documentation` — review what you write.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Documentation Completeness Checklist
|
|
2
|
+
|
|
3
|
+
Use during the audit (Step 2) to check existing or planned coverage. Source: `content/research-finding-library-docs-best-practices.md` (Section 1, the best-practices checklist, and Section 5, accessibility).
|
|
4
|
+
|
|
5
|
+
## Completeness and accuracy
|
|
6
|
+
|
|
7
|
+
- All public APIs, endpoints, parameters, and return values are documented.
|
|
8
|
+
- All error codes and messages are documented with explanations and remediation steps.
|
|
9
|
+
- Prerequisites and system requirements are stated upfront.
|
|
10
|
+
- All code examples are tested and verified to work with the current version.
|
|
11
|
+
- No documented features are missing from the implementation, and no undocumented features exist.
|
|
12
|
+
|
|
13
|
+
## Getting started and onboarding
|
|
14
|
+
|
|
15
|
+
- A "Getting Started" or "Quick Start" guide exists and can be completed in under 15 minutes.
|
|
16
|
+
- The guide leads to a meaningful, working result (not just "Hello, World" unless that is genuinely useful).
|
|
17
|
+
- Installation instructions cover all supported platforms and package managers.
|
|
18
|
+
- Authentication and configuration are explained before any API calls are shown.
|
|
19
|
+
|
|
20
|
+
## API reference
|
|
21
|
+
|
|
22
|
+
- Each endpoint/function/method has a human-friendly description, not just a parameter list.
|
|
23
|
+
- Request and response examples are provided for every endpoint.
|
|
24
|
+
- Authentication requirements are documented per endpoint where relevant.
|
|
25
|
+
- Rate limits, pagination, and other operational constraints are documented.
|
|
26
|
+
- The reference is generated from or synchronized with a machine-readable specification (OpenAPI, TypeDoc, JSDoc, Sphinx autodoc).
|
|
27
|
+
|
|
28
|
+
## Versioning and changelog
|
|
29
|
+
|
|
30
|
+
- Documentation is versioned to match software releases.
|
|
31
|
+
- A changelog exists and is kept up to date.
|
|
32
|
+
- Breaking changes are prominently highlighted.
|
|
33
|
+
- Deprecated features are marked with migration paths provided.
|
|
34
|
+
- Old versions of documentation remain accessible.
|
|
35
|
+
|
|
36
|
+
## Code examples
|
|
37
|
+
|
|
38
|
+
- Examples exist for all major use cases.
|
|
39
|
+
- Examples are provided in all officially supported languages/frameworks.
|
|
40
|
+
- Examples are complete and runnable, not pseudocode or partial snippets.
|
|
41
|
+
- Examples follow current best practices and idioms for each language.
|
|
42
|
+
|
|
43
|
+
## Conceptual and explanatory content
|
|
44
|
+
|
|
45
|
+
- Architecture and design decisions are explained (the "why", not just the "what").
|
|
46
|
+
- Key concepts are defined before they are used.
|
|
47
|
+
- Diagrams and visuals are used where they clarify complex relationships.
|
|
48
|
+
|
|
49
|
+
## Accessibility (WCAG 2.1 AA)
|
|
50
|
+
|
|
51
|
+
- Code syntax highlighting meets minimum contrast ratios.
|
|
52
|
+
- All navigation, search, and interactive elements are operable by keyboard alone.
|
|
53
|
+
- Code blocks, tables, and diagrams have appropriate ARIA labels and alt text.
|
|
54
|
+
- The site is readable on mobile and manages focus correctly in single-page-app navigation.
|
|
55
|
+
|
|
56
|
+
## Out of scope for this checklist
|
|
57
|
+
|
|
58
|
+
Internationalization/localization and interactive documentation (live playgrounds, API explorers) are valid concerns but are tracked separately as platform/infrastructure decisions, not architectural-audit items.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# LLM & Agentic Readiness Reference
|
|
2
|
+
|
|
3
|
+
Operational excerpt for the AI-readiness gap assessment in Step 4. The canonical theory is `content/research-documentation-frameworks.md` (section "Machine Readability"); this file distills the concrete checks.
|
|
4
|
+
|
|
5
|
+
## `llms.txt` standard
|
|
6
|
+
|
|
7
|
+
An emerging convention analogous to `robots.txt`: a machine-readable index at the docs site root that tells LLMs which pages matter most, with structured summaries. Check:
|
|
8
|
+
|
|
9
|
+
- Is a `llms.txt` present at the documentation root?
|
|
10
|
+
- Does it list the most authoritative pages (quick start, API reference, key how-tos)?
|
|
11
|
+
- Are summaries concise and current with the latest version?
|
|
12
|
+
|
|
13
|
+
## RAG-friendly chunking
|
|
14
|
+
|
|
15
|
+
Documentation structured as single-topic, self-contained modules chunks cleanly for retrieval-augmented generation. Check:
|
|
16
|
+
|
|
17
|
+
- Does each page cover one well-defined topic (Diátaxis quadrant purity enables this)?
|
|
18
|
+
- Are pages small enough to be one RAG chunk, or do they need explicit section anchors?
|
|
19
|
+
- Is there redundant cross-page duplication that would pollute retrieval?
|
|
20
|
+
|
|
21
|
+
## MCP and agent manifests
|
|
22
|
+
|
|
23
|
+
For tooling/agent documentation, the description fields are documentation. Check:
|
|
24
|
+
|
|
25
|
+
- Are MCP tool manifests present with precise `name`, `description`, input/output JSON schemas?
|
|
26
|
+
- Are plugin/agent cards machine-readable with capability boundaries and error conditions?
|
|
27
|
+
- Is language precise enough for a machine (no context-dependent ambiguity a human would resolve but an agent would not)?
|
|
28
|
+
|
|
29
|
+
## Dual-audience design
|
|
30
|
+
|
|
31
|
+
Modern docs serve human readers and machine consumers. The practices that serve both: clear structure, consistent terminology, modular organization, explicit metadata. Check:
|
|
32
|
+
|
|
33
|
+
- Are headings semantic and unique (not generic "Overview" repeated across pages)?
|
|
34
|
+
- Is front matter present (title, description, version, category)?
|
|
35
|
+
- Are API references generated from or synchronized with a machine-readable spec (OpenAPI, AsyncAPI, JSDoc/TypeDoc, Sphinx autodoc)?
|
|
36
|
+
|
|
37
|
+
## Docs-as-context
|
|
38
|
+
|
|
39
|
+
Documentation is increasingly a runtime input to AI systems (system-prompt embedding, RAG retrieval, vector search). Check:
|
|
40
|
+
|
|
41
|
+
- Is clean, navigation-chrome-free text available for context-window injection?
|
|
42
|
+
- Are code examples complete and runnable (agents execute what they read)?
|
|
43
|
+
- Is terminology consistent so a model trained on the docs retrieves accurately?
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Documentation Quality Metrics
|
|
2
|
+
|
|
3
|
+
Use in Step 4 to recommend measurement signals. The single most important metric is time-to-first-success; the rest build the feedback loops that keep docs honest. Source: `content/research-finding-library-docs-best-practices.md` (Section 7, Measuring Documentation Quality).
|
|
4
|
+
|
|
5
|
+
## Key metrics
|
|
6
|
+
|
|
7
|
+
- **Time-to-first-success (TTFS).** Time from a developer's first encounter with the docs to their first successful use of the library/API. Measure via user testing, analytics (first page view to first successful API call), or surveys. This is the headline number.
|
|
8
|
+
- **Support ticket deflection.** Percentage of support questions answered by docs rather than a human. Quantifies economic value; track the ratio of tickets to page views, or add "Did this page answer your question?" widgets.
|
|
9
|
+
- **Page engagement.** Time on page, scroll depth, return visits. High bounce on getting-started may mean unmet expectations; low time on reference may mean fast finds (good) or frustration (context matters).
|
|
10
|
+
- **Search analytics.** Track queries, click-through rates, and "no results" queries. No-results queries are direct evidence of missing docs. High click-through to a page means it is well-titled and relevant.
|
|
11
|
+
- **Broken link rates.** Percentage of internal/external links returning 404. Automated link checking should run on every deployment (see `doc-link-verifier` skill).
|
|
12
|
+
- **Documentation coverage.** Percentage of public APIs/endpoints/features that have docs. Measurable automatically for API reference (OpenAPI vs. documented endpoints) and code docs (docstring coverage via `interrogate`).
|
|
13
|
+
- **Page freshness.** Age of a doc page relative to the last code change that touched the documented feature. Stale docs are a leading frustration indicator.
|
|
14
|
+
|
|
15
|
+
## User testing and feedback loops
|
|
16
|
+
|
|
17
|
+
- **Usability testing.** Watch representative users attempt tasks using only the docs. Even informal tests reveal problems invisible to authors.
|
|
18
|
+
- **Inline feedback widgets.** "Was this page helpful?" at the bottom of pages. Act on it: low-rated pages get prioritized.
|
|
19
|
+
- **GitHub issues and discussions.** Questions already answered in docs indicate the docs are not discoverable or clear enough.
|
|
20
|
+
- **Developer surveys.** Periodic structured feedback on quality, gaps, and priorities.
|
|
21
|
+
- **Community channels.** Repeated questions in Discord/Slack/Stack Overflow are strong gap signals.
|
|
22
|
+
|
|
23
|
+
## Automated quality tools (CI/CD)
|
|
24
|
+
|
|
25
|
+
- **Vale** — prose linter enforcing style-guide rules (passive voice, jargon, inconsistent terminology).
|
|
26
|
+
- **markdownlint** — Markdown formatting consistency.
|
|
27
|
+
- **htmlproofer / lychee** — internal and external link checking on every deployment.
|
|
28
|
+
- **interrogate** (Python) — docstring coverage reporting.
|
|
29
|
+
- **cspell / aspell** — spell checking.
|
|
30
|
+
- **Lighthouse** — page performance, accessibility, SEO, best practices in CI.
|
|
31
|
+
|
|
32
|
+
A practical pipeline: on every PR run markdownlint + Vale + cspell + example tests; on every deployment run link checking + Lighthouse; weekly run a full broken-link crawl, coverage report, and freshness report; monthly review user feedback and search analytics.
|
|
33
|
+
|
|
34
|
+
## Building a quality culture
|
|
35
|
+
|
|
36
|
+
Metrics are necessary but not sufficient. Culture is the larger factor:
|
|
37
|
+
|
|
38
|
+
- Add "docs updated" checkboxes to PR templates.
|
|
39
|
+
- Allocate explicit sprint time (15-20%) to documentation and refactoring.
|
|
40
|
+
- Apply "you touch it, you document it" — the author of a code change owns the doc update.
|
|
41
|
+
- Assign a named owner to every documentation section.
|
|
42
|
+
- Celebrate documentation contributions the same way as code contributions.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Documentation Research Report Template
|
|
2
|
+
|
|
3
|
+
Output structure for the final report (Step 5). Keep the section order stable so reports can be compared across projects.
|
|
4
|
+
|
|
5
|
+
```markdown
|
|
6
|
+
# Documentation Research: [Project Name]
|
|
7
|
+
|
|
8
|
+
## 1. Executive Summary & Core Assertion
|
|
9
|
+
**Core Assertion:** [The one-sentence hook]
|
|
10
|
+
**Status:** [Summary of current architecture health]
|
|
11
|
+
|
|
12
|
+
## 2. Diátaxis Matrix
|
|
13
|
+
| Quadrant | Existing Topics | Proposed/Missing Topics |
|
|
14
|
+
| :--- | :--- | :--- |
|
|
15
|
+
| **Tutorial** | | |
|
|
16
|
+
| **How-to** | | |
|
|
17
|
+
| **Reference** | | |
|
|
18
|
+
| **Explanation** | | |
|
|
19
|
+
|
|
20
|
+
## 3. Snowflake Structural Map
|
|
21
|
+
- **Macro-Journey:** [Description]
|
|
22
|
+
- **Key Components:** [List]
|
|
23
|
+
|
|
24
|
+
## 4. EPPO & Cognitive Audit
|
|
25
|
+
- **Frankenbooks Found:** [List of files with mixed intent]
|
|
26
|
+
- **Context Gaps:** [Topics needing better orientation]
|
|
27
|
+
|
|
28
|
+
## 5. AI-Readiness Assessment
|
|
29
|
+
- [ ] `llms.txt` present?
|
|
30
|
+
- [ ] Explicit semantic labeling for RAG?
|
|
31
|
+
- [ ] MCP/agent manifests identified?
|
|
32
|
+
|
|
33
|
+
## 6. Measurement Signals
|
|
34
|
+
- [ ] TTFS measurable today?
|
|
35
|
+
- [ ] Search analytics available?
|
|
36
|
+
- [ ] Coverage / freshness tracked?
|
|
37
|
+
|
|
38
|
+
## 7. Recommended Next Steps
|
|
39
|
+
1. [Actionable structural change]
|
|
40
|
+
2. [Actionable topic creation]
|
|
41
|
+
3. [Actionable measurement setup]
|
|
42
|
+
```
|
|
@@ -8,43 +8,48 @@ metadata:
|
|
|
8
8
|
|
|
9
9
|
Perform a Rule of 5 review of the documentation using the Unified Frameworks for Technical Information Architecture.
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
###
|
|
36
|
-
|
|
37
|
-
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
45
|
-
|
|
46
|
-
##
|
|
47
|
-
|
|
48
|
-
-
|
|
49
|
-
-
|
|
50
|
-
-
|
|
11
|
+
## Core Rules
|
|
12
|
+
|
|
13
|
+
- You are a reviewer, not a writer. Flag issues with locations; do not rewrite content.
|
|
14
|
+
|
|
15
|
+
## Procedure
|
|
16
|
+
|
|
17
|
+
Perform 5 iterative passes. Check for convergence after each pass starting with Pass 2: report new CRITICAL issues, total new issues, the change vs. the previous pass, and status (CONVERGED or CONTINUE). Converge when no new CRITICAL issues are found and the new-issue rate drops below 10% versus the previous pass. Stop early if converged.
|
|
18
|
+
|
|
19
|
+
### Pass 1: Diátaxis & Intent
|
|
20
|
+
|
|
21
|
+
Goal: does this topic have a single, clear intent? Checks: is it a Tutorial, How-to, Reference, or Explanation? Are there leaked intents (e.g., too much theory in a Tutorial)? Issue prefix: [INTENT-001].
|
|
22
|
+
|
|
23
|
+
### Pass 2: EPPO & Standalone Utility
|
|
24
|
+
|
|
25
|
+
Goal: can a foraging reader land here and succeed? Checks: are context and prerequisites established in the first two sentences? Does it rely on "previous chapter" knowledge without links? Issue prefix: [EPPO-001].
|
|
26
|
+
|
|
27
|
+
### Pass 3: Cognitive Scannability (Info Mapping)
|
|
28
|
+
|
|
29
|
+
Goal: can the reader scan the page in under 10 seconds and find the key answer? Checks: are descriptive labels used for every 2-3 paragraphs? Are paragraphs chunked into small units? Are tables and lists used for complex data? Issue prefix: [SCAN-001].
|
|
30
|
+
|
|
31
|
+
### Pass 4: Accuracy, "Whole Game" & Fail-States
|
|
32
|
+
|
|
33
|
+
Goal: is the content technically sound and resilient? Checks: are code snippets verified? Does it show the complete result? Are common errors documented? In tutorials, is the Martini Glass pattern followed (guided context then open exploration)? Issue prefix: [ACC-001].
|
|
34
|
+
|
|
35
|
+
### Pass 5: Excellence & AI-Readiness
|
|
36
|
+
|
|
37
|
+
Goal: is it production-ready and optimized for AI agents? Checks: is there a TL;DR for LLMs? Are headers semantically unique for RAG? Is the Answer First (Pyramid Principle) in the TL;DR and first paragraph? Use `references/ai-readiness-criteria.md` for the deep AI-readiness checks (`llms.txt`, RAG chunking, dual-audience, schema sync). Issue prefix: [EXCL-001].
|
|
38
|
+
|
|
39
|
+
## Final Report
|
|
40
|
+
|
|
41
|
+
- Total Issues by Severity (Critical, High, Medium, Low).
|
|
42
|
+
- Top 3 Findings.
|
|
43
|
+
- Verdict: Ready, Needs Revision, or Needs Rework.
|
|
44
|
+
- Rationale.
|
|
45
|
+
|
|
46
|
+
## Rules
|
|
47
|
+
|
|
48
|
+
- Reference exact locations (file, section, paragraph).
|
|
49
|
+
- Validate issues exist; do not flag "potential" issues without evidence.
|
|
50
|
+
- The canonical theory lives in `content/research-documentation-frameworks.md`; `references/ai-readiness-criteria.md` is an operational excerpt that links back to it.
|
|
51
|
+
|
|
52
|
+
## Related Skills
|
|
53
|
+
|
|
54
|
+
- `research-documentation` — architecture-level gaps.
|
|
55
|
+
- `implement-documentation` — fixing what the review finds.
|