# Documentation

> Keep project documentation up to date Use when this capability is needed.

- Skill: `tomevault-io/documentation-26` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/documentation-26`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/documentation-26/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/documentation-26

---


# Skill: Documentation

## When to use this skill

- After adding a new feature
- Modifying the architecture
- User-facing behavior changes
- Before a release

## Available templates

| Template | Usage |
|----------|-------|
| `templates/version_entry.md` | Format for GLOBAL_APP_DESCRIPTION_VERSIONS.md |
| `templates/rustdoc.md` | Rustdoc documentation for functions |

## Files to update

### GLOBAL_APP_DESCRIPTION.md

**When**: New feature, architecture change, new strategy

**Content**: Complete system overview, organized by sections:
1. System Overview
2. Core Architecture
3. Trading Intelligence
4. Risk Management
5. User Interface
6. Infrastructure
7. Performance
8. Server Mode
9. Contributor Documentation

### GLOBAL_APP_DESCRIPTION_VERSIONS.md

**When**: On every significant commit

**Format**:
```markdown
## Version X.Y.Z - YYYY-MM-DD

### Added
- New feature A
- New feature B

### Changed
- Behavior modification X

### Fixed
- Bug fix Y

### Removed
- Removed obsolete feature Z
```

### Cargo.toml

**When**: On every release

**SemVer rules**:
| Change type | Version |
|-------------|---------|
| Bug fix, patch | 0.0.X → 0.0.X+1 |
| New backward-compatible feature | 0.X.0 → 0.X+1.0 |
| Breaking change | X.0.0 → X+1.0.0 |

### docs/STRATEGIES.md

**When**: Adding or modifying trading strategies

**Content per strategy**:
- Name and description
- Indicators used
- Entry/exit conditions
- Configurable parameters
- Recommended use cases

## Documentation checklist

For a new feature:
- [ ] Description added in GLOBAL_APP_DESCRIPTION.md
- [ ] Entry in GLOBAL_APP_DESCRIPTION_VERSIONS.md
- [ ] Version incremented in Cargo.toml
- [ ] README.md updated if needed
- [ ] Rustdoc comments on new public functions
- [ ] Skills updated if applicable (see below)

## Skills update (.agent/skills/)

**IMPORTANT**: Skills must reflect the current state of the code.

| If you add... | Update... |
|---------------|-----------|
| New trading strategy | `rust-trading/SKILL.md` |
| New technical indicator | `rust-trading/SKILL.md` |
| New benchmark command | `benchmarking/SKILL.md` |
| New benchmark script | `benchmarking/scripts/` |
| New test pattern | `implementation/templates/test_module.md` |
| New module structure | `implementation/templates/module_structure.md` |
| New doc convention | `documentation/SKILL.md` or `templates/` |
| New quality rule | `critical-review/SKILL.md` |
| New validation step | `testing/SKILL.md` |
| New UI component | `ui-design/SKILL.md` |
| New system feature | `spec-management/SKILL.md` (Update `specs/`) |

## Documentation conventions

### Rustdoc

```rust
/// Brief description of the function.
///
/// More detailed explanation if needed.
///
/// # Arguments
///
/// * `param1` - Description of param1
/// * `param2` - Description of param2
///
/// # Returns
///
/// Description of return value
///
/// # Errors
///
/// Description of possible errors
///
/// # Examples
///
/// ```
/// let result = my_function(arg1, arg2);
/// ```
pub fn my_function(param1: Type1, param2: Type2) -> Result<ReturnType, Error> {
    // ...
}
```

### Markdown

- Use hierarchical headers (##, ###)
- Include code examples
- Use tables for structured data
- Link to source files when relevant

---
> Source: [Zuytan/rustrade](https://github.com/Zuytan/rustrade) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-16 -->

