Skip to content

Commit 8afabb7

Browse files
committed
Merge branch 'release/1.8.2'
2 parents 80657f1 + 28b5426 commit 8afabb7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+6336
-1239
lines changed

.github/AGENTIC_DEV_README.md

Lines changed: 410 additions & 0 deletions
Large diffs are not rendered by default.

.github/DOCUMENTATION_GUIDE.md

Lines changed: 326 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,326 @@
1+
# Technical Documentation Writer Agent - Setup Summary
2+
3+
## Overview
4+
5+
A comprehensive technical documentation writer skill and documentation framework has been created for the Telemetry 2.0 embedded systems project. This agent specializes in creating and maintaining high-quality technical documentation following best practices for embedded C/C++ projects.
6+
7+
## What Was Created
8+
9+
### 1. Technical Writer Skill
10+
11+
**Location**: `.github/skills/technical-documentation-writer/SKILL.md`
12+
13+
A comprehensive skill definition that provides:
14+
- Documentation structure guidelines
15+
- Process for creating different types of documentation
16+
- Mermaid diagram templates and examples
17+
- Code example best practices
18+
- API documentation standards
19+
- Threading and memory management documentation patterns
20+
- Quality checklist
21+
- Maintenance guidelines
22+
23+
**How to Use**: When creating or updating documentation, invoke the skill by mentioning it in your request or by reading the SKILL.md file for guidance.
24+
25+
### 2. Documentation Structure
26+
27+
The following directory structure has been established:
28+
29+
```
30+
telemetry/
31+
├── README.md # ✨ NEW: Project overview and quick start
32+
├── docs/ # ✨ NEW: General documentation
33+
│ ├── README.md # Documentation index and navigation
34+
│ ├── architecture/
35+
│ │ └── overview.md # System architecture with diagrams
36+
│ └── api/
37+
│ └── public-api.md # Complete public API reference
38+
└── source/
39+
└── docs/ # Component-specific documentation
40+
├── bulkdata/
41+
│ └── README.md # Bulk data component docs
42+
└── scheduler/
43+
└── README.md # Scheduler component docs
44+
```
45+
46+
### 3. Root README.md
47+
48+
**Location**: `README.md`
49+
50+
A comprehensive project README featuring:
51+
- Project overview with architecture diagram
52+
- Quick start guide with code examples
53+
- Build instructions and Docker setup
54+
- Configuration examples
55+
- Documentation links
56+
- Performance metrics
57+
- Troubleshooting section
58+
- Contributing guidelines
59+
60+
**Purpose**: Primary entry point for developers, platform vendors, and contributors.
61+
62+
### 4. Documentation Hub
63+
64+
**Location**: `docs/README.md`
65+
66+
Central navigation hub that provides:
67+
- Overview of Telemetry 2.0
68+
- Documentation structure guide
69+
- Quick links to all documentation
70+
- Getting started paths for different user types
71+
- Documentation conventions and style guide
72+
73+
### 5. Architecture Documentation
74+
75+
**Location**: `docs/architecture/overview.md`
76+
77+
Comprehensive architecture documentation including:
78+
- High-level system architecture with Mermaid diagrams
79+
- Component descriptions and responsibilities
80+
- Data flow diagrams with sequence flows
81+
- Threading model with synchronization details
82+
- Memory architecture and budgets
83+
- Platform integration details
84+
- Security model
85+
- Performance characteristics
86+
- Error handling philosophy
87+
88+
### 6. API Reference
89+
90+
**Location**: `docs/api/public-api.md`
91+
92+
Complete public API documentation featuring:
93+
- All public functions with signatures
94+
- Parameter descriptions and constraints
95+
- Return value documentation
96+
- Thread safety information
97+
- Working code examples
98+
- Usage patterns and best practices
99+
- Error codes reference
100+
- Performance considerations
101+
102+
### 7. Component Documentation Examples
103+
104+
#### Scheduler Component
105+
**Location**: `source/docs/scheduler/README.md`
106+
107+
Example of component-level documentation with:
108+
- Component overview and architecture
109+
- Threading model and synchronization
110+
- API reference for internal functions
111+
- Memory management details
112+
- Usage examples
113+
- Troubleshooting guide
114+
115+
#### Bulk Data Component
116+
**Location**: `source/docs/bulkdata/README.md`
117+
118+
Another component example demonstrating:
119+
- Complex data structures
120+
- Event processing flows
121+
- Profile configuration examples
122+
- Performance metrics
123+
- Testing procedures
124+
125+
## Documentation Features
126+
127+
### Mermaid Diagrams
128+
129+
All documentation uses Mermaid for diagrams, including:
130+
131+
**Architecture Diagrams:**
132+
```mermaid
133+
graph TB
134+
A[Component A] --> B[Component B]
135+
B --> C[Component C]
136+
```
137+
138+
**Sequence Diagrams:**
139+
```mermaid
140+
sequenceDiagram
141+
Client->>Server: Request
142+
Server-->>Client: Response
143+
```
144+
145+
**State Diagrams:**
146+
```mermaid
147+
stateDiagram-v2
148+
[*] --> Idle
149+
Idle --> Active
150+
Active --> [*]
151+
```
152+
153+
### Code Examples
154+
155+
All code examples are:
156+
- Fully compilable
157+
- Include error handling
158+
- Show proper resource cleanup
159+
- Follow project coding standards
160+
- Include comments explaining key concepts
161+
162+
### Cross-References
163+
164+
All documents include:
165+
- Cross-references to related documentation
166+
- File links with line numbers where appropriate
167+
- Breadcrumb navigation
168+
- "See Also" sections
169+
170+
## How to Use the Documentation System
171+
172+
### For Creating New Documentation
173+
174+
1. **Read the Skill**: Review `.github/skills/technical-documentation-writer/SKILL.md`
175+
176+
2. **Choose the Right Location**:
177+
- General/architecture docs → `docs/`
178+
- Component-specific docs → `source/docs/{component}/`
179+
- API docs → `docs/api/`
180+
181+
3. **Follow the Template**: Use existing docs as templates
182+
183+
4. **Include Required Elements**:
184+
- Overview section
185+
- Mermaid diagrams for complex concepts
186+
- Code examples
187+
- Cross-references
188+
- See Also section
189+
190+
5. **Update Navigation**: Add links in relevant README.md files
191+
192+
### For Requesting Documentation
193+
194+
When asking the AI agent to create documentation:
195+
196+
```
197+
Create documentation for the XConf client component following the
198+
technical-documentation-writer skill guidelines.
199+
```
200+
201+
Or more specifically:
202+
203+
```
204+
Document the profile_create() API function including:
205+
- Full signature
206+
- Parameter details
207+
- Return values
208+
- Thread safety
209+
- Memory ownership
210+
- Working example
211+
```
212+
213+
### For Maintaining Documentation
214+
215+
1. **Keep in Sync**: Update docs when code changes
216+
2. **Validate Examples**: Ensure code examples still compile
217+
3. **Check Links**: Verify cross-references work
218+
4. **Review Diagrams**: Update diagrams for architecture changes
219+
220+
## Documentation Standards
221+
222+
### Naming Conventions
223+
224+
- **Files**: lowercase with hyphens (e.g., `threading-model.md`)
225+
- **Directories**: lowercase, no spaces
226+
- **Headings**: Title Case for major sections
227+
- **Code symbols**: Use backticks (e.g., `function_name()`)
228+
229+
### File Organization
230+
231+
```
232+
component-name/
233+
├── README.md # Component overview (start here)
234+
├── api-reference.md # Detailed API docs (optional)
235+
├── implementation.md # Implementation details (optional)
236+
└── examples.md # Extended examples (optional)
237+
```
238+
239+
### Required Sections
240+
241+
Every component README.md should have:
242+
1. Overview (2-3 sentences)
243+
2. Architecture (with diagram)
244+
3. Key Components
245+
4. Threading Model
246+
5. Memory Management
247+
6. API Reference
248+
7. Usage Examples
249+
8. See Also
250+
251+
## Quality Checklist
252+
253+
Before considering documentation complete:
254+
255+
- [ ] All public APIs documented
256+
- [ ] At least one working example per major function
257+
- [ ] Thread safety explicitly stated
258+
- [ ] Memory ownership documented
259+
- [ ] Mermaid diagrams for complex flows
260+
- [ ] Cross-references to related docs
261+
- [ ] Code examples compile
262+
- [ ] Spell-checked
263+
- [ ] Reviewed by component author
264+
265+
## Agent Usage Examples
266+
267+
### Example 1: Create Component Documentation
268+
269+
**Prompt:**
270+
```
271+
Create comprehensive documentation for the Report Generator component in
272+
source/docs/reportgen/. Follow the technical-documentation-writer skill
273+
and use the scheduler component docs as a reference.
274+
```
275+
276+
### Example 2: Update API Documentation
277+
278+
**Prompt:**
279+
```
280+
Update the public API documentation to add the new t2_event_batch()
281+
function. Include signature, parameters, thread safety, examples, and
282+
best practices.
283+
```
284+
285+
### Example 3: Create Architecture Diagram
286+
287+
**Prompt:**
288+
```
289+
Create a Mermaid sequence diagram showing the complete flow from an
290+
application sending an event through to HTTP transmission. Include all
291+
intermediate components.
292+
```
293+
294+
### Example 4: Write Integration Guide
295+
296+
**Prompt:**
297+
```
298+
Create a developer integration guide in docs/integration/developer-guide.md
299+
that walks through integrating Telemetry 2.0 into a new RDK component.
300+
Include build setup, basic usage, and common pitfalls.
301+
```
302+
303+
304+
---
305+
306+
**Created**: March 2026
307+
**Maintained By**: Telemetry Team
308+
**Status**: Active
309+
310+
## Invoking the Agent
311+
312+
To use the technical documentation writer agent in your development workflow, simply mention documentation needs in your requests:
313+
314+
```
315+
Please document the new profile_validate() function following our
316+
documentation standards.
317+
```
318+
319+
Or invoke the skill explicitly:
320+
321+
```
322+
Using the technical-documentation-writer skill, create architecture
323+
documentation for the privacy control subsystem.
324+
```
325+
326+
The agent will automatically follow the guidelines and produce documentation matching the established patterns and quality standards.

0 commit comments

Comments
 (0)