Skip to content

Commit 8affc9e

Browse files
committed
feat: Implement comprehensive documentation parity tracking by categorizing features, identifying doc stubs, and automating report generation for Python, Rust, and TypeScript SDKs.
1 parent 2e135e6 commit 8affc9e

File tree

7 files changed

+1102
-1705
lines changed

7 files changed

+1102
-1705
lines changed
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
name: Update Documentation Parity Tracker
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
paths:
7+
- 'src/praisonai-agents/praisonaiagents/**/*.py'
8+
- 'src/praisonai-ts/src/**/*.ts'
9+
- 'src/praisonai-rust/src/**/*.rs'
10+
- 'src/praisonai/praisonai/_dev/parity/**/*.py'
11+
- '.github/workflows/update-docs-parity.yml'
12+
workflow_dispatch: # Allow manual trigger
13+
14+
permissions:
15+
contents: write
16+
17+
jobs:
18+
update-docs-parity:
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
- name: Checkout repository
23+
uses: actions/checkout@v4
24+
with:
25+
ref: main
26+
persist-credentials: true
27+
fetch-depth: 0
28+
29+
- name: Checkout PraisonAIDocs
30+
uses: actions/checkout@v4
31+
with:
32+
repository: MervinPraison/PraisonAIDocs
33+
path: PraisonAIDocs
34+
token: ${{ secrets.DOCS_PAT }}
35+
36+
- name: Set up Python
37+
uses: actions/setup-python@v5
38+
with:
39+
python-version: '3.11'
40+
41+
- name: Install dependencies
42+
run: |
43+
pip install pyyaml
44+
45+
- name: Generate docs parity trackers
46+
run: |
47+
cd $GITHUB_WORKSPACE
48+
python3 src/praisonai/scripts/generate_docs_parity.py --docs-root PraisonAIDocs/docs --copy-docs
49+
50+
- name: Check for changes
51+
id: check_changes
52+
run: |
53+
if git diff --quiet src/praisonai-agents/DOCS_PARITY.md src/praisonai-ts/DOCS_PARITY.md src/praisonai-rust/DOCS_PARITY.md 2>/dev/null; then
54+
echo "changes=false" >> $GITHUB_OUTPUT
55+
echo "No changes to docs parity trackers"
56+
else
57+
echo "changes=true" >> $GITHUB_OUTPUT
58+
echo "Docs parity trackers have been updated"
59+
git diff --stat src/praisonai-agents/DOCS_PARITY.md src/praisonai-ts/DOCS_PARITY.md src/praisonai-rust/DOCS_PARITY.md
60+
fi
61+
62+
- name: Commit and push changes to praisonai-package
63+
if: steps.check_changes.outputs.changes == 'true'
64+
uses: stefanzweifel/git-auto-commit-action@v5
65+
with:
66+
commit_message: "docs: auto-update documentation parity trackers [skip ci]"
67+
file_pattern: 'src/praisonai-agents/DOCS_PARITY.md src/praisonai-ts/DOCS_PARITY.md src/praisonai-rust/DOCS_PARITY.md'
68+
commit_user_name: "github-actions[bot]"
69+
commit_user_email: "41898282+github-actions[bot]@users.noreply.github.com"
70+
commit_author: "github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>"
71+
72+
- name: Commit and push changes to PraisonAIDocs
73+
if: steps.check_changes.outputs.changes == 'true'
74+
run: |
75+
cd PraisonAIDocs
76+
git config user.name "github-actions[bot]"
77+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
78+
git add docs/features/DOCS_PARITY.md docs/js/DOCS_PARITY.md docs/rust/DOCS_PARITY.md
79+
git diff --staged --quiet || git commit -m "docs: auto-update documentation parity trackers [skip ci]"
80+
git push
Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
# Documentation Parity Tracker (Python)
2+
3+
> **Categories:** 60 | **Documented:** 57 | **Parity:** 95.0%
4+
5+
This report compares **Python SDK feature categories** against **Python documentation** (docs/concepts, docs/features, etc.).
6+
7+
## Summary
8+
9+
| Metric | Count |
10+
|--------|-------|
11+
| Feature Categories | 60 |
12+
| **Documented Categories** | **57** |
13+
| **Undocumented Categories** | **3** |
14+
| **Parity** | **95.0%** |
15+
16+
## Documented Categories
17+
18+
| Category | Features | Docs | Lines |
19+
|----------|----------|------|-------|
20+
| ✅ AGUI | 1 | 2 | 420 |
21+
| ✅ Agent | 19 | 30 | 8367 |
22+
| ✅ Agent-to-Agent (A2A) | 1 | 3 | 625 |
23+
| ✅ Approval | 1 | 2 | 889 |
24+
| ✅ Audio | 2 | 10 | 649 |
25+
| ✅ Auto Generation | 3 | 6 | 1386 |
26+
| ✅ Autonomy | 3 | 4 | 1146 |
27+
| ✅ Bots | 5 | 2 | 573 |
28+
| ✅ Chunking | 2 | 2 | 285 |
29+
| ✅ Citations | 2 | 1 | 202 |
30+
| ✅ Code Execution | 3 | 13 | 3395 |
31+
| ✅ Conditions | 1 | 3 | 1086 |
32+
| ✅ Configuration | 2 | 7 | 1753 |
33+
| ✅ Context Management | 13 | 29 | 7576 |
34+
| ✅ Database | 1 | 31 | 3037 |
35+
| ✅ Display | 6 | 2 | 1175 |
36+
| ✅ Embeddings | 6 | 23 | 1966 |
37+
| ✅ Evaluation | 1 | 6 | 2538 |
38+
| ✅ Events | 1 | 2 | 699 |
39+
| ✅ Execution | 3 | 2 | 515 |
40+
| ✅ Files | 2 | 5 | 863 |
41+
| ✅ Flow | 1 | 1 | 284 |
42+
| ✅ Gateway | 6 | 1 | 256 |
43+
| ✅ Guardrails | 4 | 4 | 2279 |
44+
| ✅ Handoffs | 10 | 4 | 1674 |
45+
| ✅ Hooks | 2 | 6 | 1606 |
46+
| ✅ Image | 1 | 11 | 1096 |
47+
| ✅ Knowledge | 3 | 12 | 3262 |
48+
| ✅ LLM | 2 | 2 | 1049 |
49+
| ✅ Loops | 4 | 1 | 250 |
50+
| ✅ MCP | 2 | 47 | 9754 |
51+
| ✅ Memory | 6 | 12 | 4474 |
52+
| ✅ Output | 3 | 4 | 868 |
53+
| ✅ Parallel Execution | 2 | 2 | 347 |
54+
| ✅ Planning | 6 | 5 | 1506 |
55+
| ✅ Plugins | 8 | 3 | 1494 |
56+
| ✅ Prompts | 2 | 4 | 796 |
57+
| ✅ Providers | 2 | 50 | 5396 |
58+
| ✅ Query | 1 | 2 | 616 |
59+
| ✅ RAG | 5 | 14 | 2910 |
60+
| ✅ Realtime | 2 | 5 | 584 |
61+
| ✅ Reflection | 3 | 2 | 469 |
62+
| ✅ Retrieval | 2 | 5 | 941 |
63+
| ✅ Routing | 1 | 2 | 597 |
64+
| ✅ Sandbox | 5 | 3 | 1002 |
65+
| ✅ Security | 1 | 1 | 875 |
66+
| ✅ Sessions | 2 | 8 | 2128 |
67+
| ✅ Skills | 5 | 5 | 2002 |
68+
| ✅ Tasks | 2 | 5 | 2590 |
69+
| ✅ Telemetry | 1 | 2 | 541 |
70+
| ✅ Templates | 1 | 7 | 1411 |
71+
| ✅ Tools | 4 | 97 | 17827 |
72+
| ✅ Tracing | 3 | 2 | 139 |
73+
| ✅ Video | 2 | 5 | 460 |
74+
| ✅ Vision | 2 | 1 | 283 |
75+
| ✅ Web | 4 | 6 | 1267 |
76+
| ✅ Workflows | 4 | 9 | 3579 |
77+
78+
## Stub Documentation (Need Content)
79+
80+
These categories have documentation files but < 50 lines (stubs):
81+
82+
| Category | Features | Docs | Lines |
83+
|----------|----------|------|-------|
84+
| ⚠️ OCR | 2 | 1 | 49 |
85+
86+
## Undocumented Categories (Need Documentation)
87+
88+
| Category | Features |
89+
|----------|----------|
90+
| ❌ Failover | 2 |
91+
| ❌ Optimizer | 1 |
92+
93+
## Documentation Without Features
94+
95+
These docs exist but don't match any implemented feature category:
96+
97+
- ℹ️ AI SDK (1 docs, 112 lines)
98+
- ℹ️ Agent-to-User (A2U) (3 docs, 770 lines)
99+
- ℹ️ CLI (91 docs, 21386 lines)
100+
- ℹ️ Callbacks (1 docs, 985 lines)
101+
- ℹ️ Chat (3 docs, 546 lines)
102+
- ℹ️ Deep Research (2 docs, 437 lines)
103+
- ℹ️ Deployment (29 docs, 5931 lines)
104+
- ℹ️ Jobs (1 docs, 358 lines)
105+
- ℹ️ Middleware (1 docs, 60 lines)
106+
- ℹ️ Observability (21 docs, 1580 lines)
107+
- ℹ️ Process (1 docs, 506 lines)
108+
- ℹ️ Scheduler (2 docs, 858 lines)
109+
- ℹ️ Storage (4 docs, 722 lines)
110+
- ℹ️ Streaming (3 docs, 485 lines)
111+
- ℹ️ Token Management (3 docs, 1020 lines)
112+
- ℹ️ Vector Store (11 docs, 733 lines)
113+
114+
---
115+
116+
*Generated by `praisonai._dev.parity.docs_generator`*

src/praisonai-rust/DOCS_PARITY.md

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# Documentation Parity Tracker (Rust)
2+
3+
> **Categories:** 68 | **Documented:** 68 | **Parity:** 100.0%
4+
5+
This report compares **Rust SDK feature categories** against **Rust documentation** (docs/rust/).
6+
7+
## Summary
8+
9+
| Metric | Count |
10+
|--------|-------|
11+
| Feature Categories | 68 |
12+
| **Documented Categories** | **68** |
13+
| **Undocumented Categories** | **0** |
14+
| **Parity** | **100.0%** |
15+
16+
## Documented Categories
17+
18+
| Category | Features | Docs | Lines |
19+
|----------|----------|------|-------|
20+
| ✅ AGUI | 6 | 1 | 108 |
21+
| ✅ Agent | 39 | 5 | 901 |
22+
| ✅ Agent-to-Agent (A2A) | 6 | 1 | 131 |
23+
| ✅ Approval | 2 | 1 | 102 |
24+
| ✅ Audio | 3 | 1 | 100 |
25+
| ✅ Auto Generation | 5 | 1 | 102 |
26+
| ✅ Autonomy | 4 | 1 | 108 |
27+
| ✅ Bots | 10 | 1 | 271 |
28+
| ✅ Budget | 2 | 1 | 90 |
29+
| ✅ Callbacks | 1 | 1 | 96 |
30+
| ✅ Chunking | 3 | 1 | 114 |
31+
| ✅ Citations | 2 | 1 | 123 |
32+
| ✅ Code Execution | 5 | 1 | 147 |
33+
| ✅ Conditions | 1 | 1 | 243 |
34+
| ✅ Configuration | 2 | 1 | 301 |
35+
| ✅ Context Management | 21 | 1 | 284 |
36+
| ✅ Criteria | 4 | 1 | 108 |
37+
| ✅ Database | 2 | 1 | 80 |
38+
| ✅ Display | 12 | 1 | 282 |
39+
| ✅ Documents | 1 | 1 | 113 |
40+
| ✅ Embeddings | 8 | 2 | 323 |
41+
| ✅ Evaluation | 5 | 1 | 311 |
42+
| ✅ Events | 3 | 1 | 117 |
43+
| ✅ Execution | 3 | 1 | 93 |
44+
| ✅ Failover | 3 | 1 | 279 |
45+
| ✅ Files | 3 | 1 | 101 |
46+
| ✅ Flow | 2 | 1 | 99 |
47+
| ✅ Gateway | 8 | 1 | 293 |
48+
| ✅ Guardrails | 10 | 1 | 322 |
49+
| ✅ Handoffs | 13 | 1 | 311 |
50+
| ✅ Hooks | 12 | 1 | 297 |
51+
| ✅ Image | 4 | 1 | 139 |
52+
| ✅ Knowledge | 12 | 1 | 297 |
53+
| ✅ LLM | 10 | 1 | 237 |
54+
| ✅ Loops | 7 | 1 | 111 |
55+
| ✅ MCP | 11 | 1 | 359 |
56+
| ✅ Memory | 11 | 1 | 267 |
57+
| ✅ OCR | 5 | 1 | 130 |
58+
| ✅ Optimizer | 1 | 1 | 62 |
59+
| ✅ Output | 3 | 1 | 99 |
60+
| ✅ Parallel Execution | 4 | 1 | 98 |
61+
| ✅ Planning | 10 | 1 | 305 |
62+
| ✅ Plugins | 11 | 1 | 337 |
63+
| ✅ Process | 2 | 1 | 83 |
64+
| ✅ Prompts | 4 | 1 | 117 |
65+
| ✅ Providers | 3 | 1 | 140 |
66+
| ✅ Query | 5 | 1 | 109 |
67+
| ✅ RAG | 6 | 1 | 328 |
68+
| ✅ Realtime | 3 | 1 | 130 |
69+
| ✅ Reflection | 4 | 1 | 89 |
70+
| ✅ Retrieval | 4 | 1 | 136 |
71+
| ✅ Routing | 1 | 1 | 129 |
72+
| ✅ Sandbox | 7 | 2 | 56 |
73+
| ✅ Security | 2 | 1 | 127 |
74+
| ✅ Sessions | 7 | 1 | 279 |
75+
| ✅ Skills | 5 | 1 | 224 |
76+
| ✅ Streaming | 6 | 1 | 332 |
77+
| ✅ Tasks | 8 | 1 | 269 |
78+
| ✅ Telemetry | 4 | 1 | 285 |
79+
| ✅ Templates | 1 | 1 | 95 |
80+
| ✅ Token Management | 2 | 1 | 119 |
81+
| ✅ Tools | 16 | 1 | 281 |
82+
| ✅ Tracing | 8 | 1 | 280 |
83+
| ✅ Vector Store | 2 | 1 | 128 |
84+
| ✅ Video | 5 | 1 | 133 |
85+
| ✅ Vision | 3 | 1 | 89 |
86+
| ✅ Web | 5 | 1 | 106 |
87+
| ✅ Workflows | 5 | 1 | 295 |
88+
89+
## Documentation Without Features
90+
91+
These docs exist but don't match any implemented feature category:
92+
93+
- ℹ️ CLI (1 docs, 168 lines)
94+
95+
---
96+
97+
*Generated by `praisonai._dev.parity.docs_generator`*

0 commit comments

Comments
 (0)