ace-handbook 0.19.0
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.
- checksums.yaml +7 -0
- data/.ace-defaults/handbook/config.yml +4 -0
- data/.ace-defaults/nav/protocols/guide-sources/ace-handbook.yml +19 -0
- data/.ace-defaults/nav/protocols/tmpl-sources/ace-handbook.yml +10 -0
- data/.ace-defaults/nav/protocols/wfi-sources/ace-handbook.yml +19 -0
- data/CHANGELOG.md +362 -0
- data/LICENSE +21 -0
- data/README.md +42 -0
- data/Rakefile +12 -0
- data/exe/ace-handbook +6 -0
- data/handbook/guides/ai-agent-integration.g.md +625 -0
- data/handbook/guides/atom-pattern.g.md +371 -0
- data/handbook/guides/changelog.g.md +333 -0
- data/handbook/guides/cli-dry-cli.g.md +276 -0
- data/handbook/guides/cli-support-cli.g.md +277 -0
- data/handbook/guides/coding-standards/ruby.md +41 -0
- data/handbook/guides/coding-standards/rust.md +19 -0
- data/handbook/guides/coding-standards/typescript.md +20 -0
- data/handbook/guides/coding-standards.g.md +134 -0
- data/handbook/guides/debug-troubleshooting.g.md +62 -0
- data/handbook/guides/error-handling/ruby.md +29 -0
- data/handbook/guides/error-handling/rust.md +59 -0
- data/handbook/guides/error-handling/typescript.md +38 -0
- data/handbook/guides/error-handling.g.md +207 -0
- data/handbook/guides/meta/agents-definition.g.md +823 -0
- data/handbook/guides/meta/guides-definition.g.md +322 -0
- data/handbook/guides/meta/markdown-definition.g.md +210 -0
- data/handbook/guides/meta/tools-definition.g.md +159 -0
- data/handbook/guides/meta/workflow-instructions-definition.g.md +367 -0
- data/handbook/guides/mono-repo-patterns.g.md +92 -0
- data/handbook/guides/multi-agent-research.g.md +251 -0
- data/handbook/guides/performance/ruby.md +25 -0
- data/handbook/guides/performance/rust.md +48 -0
- data/handbook/guides/performance/typescript.md +32 -0
- data/handbook/guides/performance.g.md +211 -0
- data/handbook/guides/prompt-caching.g.md +83 -0
- data/handbook/guides/quality-assurance/ruby.md +33 -0
- data/handbook/guides/quality-assurance/rust.md +41 -0
- data/handbook/guides/quality-assurance/typescript.md +49 -0
- data/handbook/guides/quality-assurance.g.md +222 -0
- data/handbook/guides/strategic-planning.g.md +69 -0
- data/handbook/guides/troubleshooting/ruby.md +21 -0
- data/handbook/guides/troubleshooting/rust.md +20 -0
- data/handbook/guides/troubleshooting/typescript.md +36 -0
- data/handbook/guides/workflow-context-embedding.g.md +286 -0
- data/handbook/skills/as-handbook-init-project/SKILL.md +34 -0
- data/handbook/skills/as-handbook-manage-agents/SKILL.md +35 -0
- data/handbook/skills/as-handbook-manage-guides/SKILL.md +35 -0
- data/handbook/skills/as-handbook-manage-workflows/SKILL.md +35 -0
- data/handbook/skills/as-handbook-parallel-research/SKILL.md +29 -0
- data/handbook/skills/as-handbook-perform-delivery/SKILL.md +35 -0
- data/handbook/skills/as-handbook-review-guides/SKILL.md +32 -0
- data/handbook/skills/as-handbook-review-workflows/SKILL.md +32 -0
- data/handbook/skills/as-handbook-synthesize-research/SKILL.md +29 -0
- data/handbook/skills/as-handbook-update-docs/SKILL.md +35 -0
- data/handbook/skills/as-release/SKILL.md +50 -0
- data/handbook/skills/as-release-bump-version/SKILL.md +28 -0
- data/handbook/skills/as-release-rubygems-publish/SKILL.md +58 -0
- data/handbook/skills/as-release-update-changelog/SKILL.md +28 -0
- data/handbook/templates/completed-work-documentation.md +59 -0
- data/handbook/templates/cookbooks/cookbook.template.md +237 -0
- data/handbook/templates/research-comparison.template.md +175 -0
- data/handbook/workflow-instructions/handbook/init-project.wf.md +629 -0
- data/handbook/workflow-instructions/handbook/manage-agents.wf.md +379 -0
- data/handbook/workflow-instructions/handbook/manage-guides.wf.md +294 -0
- data/handbook/workflow-instructions/handbook/manage-workflows.wf.md +292 -0
- data/handbook/workflow-instructions/handbook/parallel-research.wf.md +328 -0
- data/handbook/workflow-instructions/handbook/perform-delivery.wf.md +267 -0
- data/handbook/workflow-instructions/handbook/research.wf.md +247 -0
- data/handbook/workflow-instructions/handbook/review-guides.wf.md +348 -0
- data/handbook/workflow-instructions/handbook/review-workflows.wf.md +299 -0
- data/handbook/workflow-instructions/handbook/synthesize-research.wf.md +429 -0
- data/handbook/workflow-instructions/handbook/update-docs.wf.md +338 -0
- data/lib/ace/handbook/atoms/provider_registry.rb +70 -0
- data/lib/ace/handbook/cli/commands/status.rb +36 -0
- data/lib/ace/handbook/cli/commands/sync.rb +36 -0
- data/lib/ace/handbook/cli.rb +51 -0
- data/lib/ace/handbook/models/skill_document.rb +25 -0
- data/lib/ace/handbook/molecules/skill_projection.rb +54 -0
- data/lib/ace/handbook/organisms/provider_syncer.rb +106 -0
- data/lib/ace/handbook/organisms/skill_inventory.rb +54 -0
- data/lib/ace/handbook/organisms/status_collector.rb +181 -0
- data/lib/ace/handbook/version.rb +7 -0
- data/lib/ace/handbook.rb +28 -0
- metadata +227 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Rust Quality Assurance Examples
|
|
2
|
+
|
|
3
|
+
This file provides Rust-specific examples related to the main [Quality Assurance Guide](../quality-assurance.g.md).
|
|
4
|
+
|
|
5
|
+
* **Linters/Formatters:** `rustfmt`, `clippy` (run via `cargo fmt` and `cargo clippy`)
|
|
6
|
+
* **Static Analysis:** Rust compiler itself catches many issues; `cargo audit` for security vulnerabilities in dependencies.
|
|
7
|
+
* **Test Coverage:** `cargo-tarpaulin`, `grcov`
|
|
8
|
+
* **CI Configuration:** Examples for GitHub Actions, GitLab CI using Rust toolchain setup actions.
|
|
9
|
+
|
|
10
|
+
**Example `rustfmt.toml` (Configuration for rustfmt):**
|
|
11
|
+
|
|
12
|
+
```toml
|
|
13
|
+
# Example rustfmt configuration
|
|
14
|
+
max_width = 100
|
|
15
|
+
use_small_heuristics = "Max"
|
|
16
|
+
# imports_granularity = "Crate"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**Example `clippy.toml` (Configuration for clippy):**
|
|
20
|
+
|
|
21
|
+
```toml
|
|
22
|
+
# Example clippy configuration
|
|
23
|
+
# Disallow specific lints globally
|
|
24
|
+
disallowed-methods = [
|
|
25
|
+
# Example: discourage Option::unwrap
|
|
26
|
+
# "std::option::Option::unwrap",
|
|
27
|
+
]
|
|
28
|
+
|
|
29
|
+
# Set complexity limits
|
|
30
|
+
cyclomatic-complexity-threshold = 30
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Example CI step for checking formatting and linting:**
|
|
34
|
+
|
|
35
|
+
```yaml
|
|
36
|
+
- name: Check Formatting
|
|
37
|
+
run: cargo fmt --all -- --check
|
|
38
|
+
|
|
39
|
+
- name: Check Lints
|
|
40
|
+
run: cargo clippy --all-targets -- -D warnings # Fail on warnings
|
|
41
|
+
```
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# TypeScript Quality Assurance Examples
|
|
2
|
+
|
|
3
|
+
This file provides TypeScript-specific examples related to the main [Quality Assurance Guide](../quality-assurance.g.md).
|
|
4
|
+
|
|
5
|
+
* **Linters/Formatters:** `eslint` (with `@typescript-eslint/parser`), `prettier`
|
|
6
|
+
* **Static Analysis:** TypeScript compiler (`tsc --noEmit`), `sonarjs` (plugin for ESLint)
|
|
7
|
+
* **Test Coverage:** `istanbul` (often via `jest` or `vitest`)
|
|
8
|
+
* **CI Configuration:** Examples for GitHub Actions, GitLab CI using Node.js/TypeScript setup actions.
|
|
9
|
+
|
|
10
|
+
**Example `.eslintrc.js` (ESLint with TypeScript):**
|
|
11
|
+
|
|
12
|
+
```javascript
|
|
13
|
+
module.exports = {
|
|
14
|
+
root: true,
|
|
15
|
+
parser: '@typescript-eslint/parser',
|
|
16
|
+
plugins: [
|
|
17
|
+
'@typescript-eslint',
|
|
18
|
+
],
|
|
19
|
+
extends: [
|
|
20
|
+
'eslint:recommended',
|
|
21
|
+
'plugin:@typescript-eslint/recommended',
|
|
22
|
+
'prettier', // Make sure prettier is last
|
|
23
|
+
],
|
|
24
|
+
rules: {
|
|
25
|
+
// Add custom rules here
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**Example Jest config for coverage (`jest.config.js`):**
|
|
31
|
+
|
|
32
|
+
```javascript
|
|
33
|
+
module.exports = {
|
|
34
|
+
preset: 'ts-jest',
|
|
35
|
+
testEnvironment: 'node',
|
|
36
|
+
collectCoverage: true,
|
|
37
|
+
coverageDirectory: 'coverage',
|
|
38
|
+
coverageReporters: ['text', 'lcov'],
|
|
39
|
+
// Coverage thresholds (optional)
|
|
40
|
+
// coverageThreshold: {
|
|
41
|
+
// global: {
|
|
42
|
+
// branches: 80,
|
|
43
|
+
// functions: 80,
|
|
44
|
+
// lines: 80,
|
|
45
|
+
// statements: -10,
|
|
46
|
+
// },
|
|
47
|
+
// },
|
|
48
|
+
};
|
|
49
|
+
```
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
---
|
|
2
|
+
doc-type: guide
|
|
3
|
+
title: Quality Assurance Guidelines
|
|
4
|
+
purpose: Documentation for ace-handbook/handbook/guides/quality-assurance.g.md
|
|
5
|
+
ace-docs:
|
|
6
|
+
last-updated: 2026-01-08
|
|
7
|
+
last-checked: 2026-03-21
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Quality Assurance Guidelines
|
|
11
|
+
|
|
12
|
+
## Goal
|
|
13
|
+
|
|
14
|
+
This guide outlines the processes, tools, and standards used to ensure the quality, reliability, and
|
|
15
|
+
maintainability of the codebase throughout the development lifecycle.
|
|
16
|
+
|
|
17
|
+
## 1. Code Quality Tools
|
|
18
|
+
|
|
19
|
+
1. **Static Analysis & Linting Setup**:
|
|
20
|
+
Configure static analysis and linting tools appropriate for your project's language(s).
|
|
21
|
+
- Configuration typically involves specifying language versions, enabling/disabling rules, setting formatting
|
|
22
|
+
preferences, and defining paths to ignore.
|
|
23
|
+
|
|
24
|
+
```yaml
|
|
25
|
+
# Example conceptual configuration (e.g., for a linter)
|
|
26
|
+
language_version: "X.Y"
|
|
27
|
+
fix_on_save: true
|
|
28
|
+
parallel_processing: true
|
|
29
|
+
output_format: "progress"
|
|
30
|
+
|
|
31
|
+
ignore_paths:
|
|
32
|
+
- 'bin/*'
|
|
33
|
+
- 'vendor/**/*'
|
|
34
|
+
- 'build/*'
|
|
35
|
+
- 'tmp/*'
|
|
36
|
+
|
|
37
|
+
rules:
|
|
38
|
+
# Specific rule configuration...
|
|
39
|
+
rule_name: enabled
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
2. **CI Integration**:
|
|
43
|
+
Integrate static analysis, linting, and code coverage checks into the Continuous Integration
|
|
44
|
+
(CI) pipeline (e.g., using GitHub Actions, GitLab CI, Jenkins).
|
|
45
|
+
- Ensure these checks run automatically on pushes and pull requests.
|
|
46
|
+
- Fail the build if quality checks do not pass.
|
|
47
|
+
|
|
48
|
+
```yaml
|
|
49
|
+
# Example conceptual CI workflow snippet
|
|
50
|
+
name: Quality Checks
|
|
51
|
+
|
|
52
|
+
on: [push, pull_request]
|
|
53
|
+
|
|
54
|
+
jobs:
|
|
55
|
+
quality:
|
|
56
|
+
runs-on: ubuntu-latest # Or your preferred runner
|
|
57
|
+
steps:
|
|
58
|
+
- uses: actions/checkout@vX # Use appropriate version
|
|
59
|
+
|
|
60
|
+
# Add steps for setting up the environment (language, dependencies)
|
|
61
|
+
# - name: Setup Language Environment
|
|
62
|
+
# uses: actions/setup-node@vX # Or setup-ruby, setup-python, etc.
|
|
63
|
+
# - name: Install Dependencies
|
|
64
|
+
# run: your-package-manager install
|
|
65
|
+
|
|
66
|
+
- name: Run Linter
|
|
67
|
+
run: your-linter-command --options # e.g.,
|
|
68
|
+
|
|
69
|
+
- name: Run Tests & Coverage
|
|
70
|
+
run: your-test-runner-command --coverage # e.g.,
|
|
71
|
+
|
|
72
|
+
# Optional: Upload coverage reports
|
|
73
|
+
# - name: Upload Coverage Report
|
|
74
|
+
# uses: codecov/codecov-action@vX
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 2. Code Review Process
|
|
78
|
+
|
|
79
|
+
1. **Pull Request Template**:
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+
## Changes
|
|
83
|
+
- List key changes
|
|
84
|
+
- Impact on existing features
|
|
85
|
+
|
|
86
|
+
## Testing
|
|
87
|
+
- [ ] Unit tests added
|
|
88
|
+
- [ ] Integration tests updated
|
|
89
|
+
- [ ] Test coverage maintained
|
|
90
|
+
|
|
91
|
+
## Quality
|
|
92
|
+
- [ ] Follows coding standards
|
|
93
|
+
- [ ] Documentation updated
|
|
94
|
+
- [ ] No new security concerns
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
2. **Review Checklist**:
|
|
98
|
+
|
|
99
|
+
```markdown
|
|
100
|
+
### Design
|
|
101
|
+
- [ ] Follows SDK patterns
|
|
102
|
+
- [ ] Error handling complete
|
|
103
|
+
- [ ] Thread safety considered
|
|
104
|
+
|
|
105
|
+
### Implementation
|
|
106
|
+
- [ ] Clean code principles
|
|
107
|
+
- [ ] No code smells
|
|
108
|
+
- [ ] Efficient algorithms
|
|
109
|
+
|
|
110
|
+
### Testing
|
|
111
|
+
- [ ] Test cases cover edge cases
|
|
112
|
+
- [ ] Mocks used appropriately
|
|
113
|
+
- [ ] Performance impacts tested
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 3. Test Coverage
|
|
117
|
+
|
|
118
|
+
1. **Coverage Configuration**:
|
|
119
|
+
Configure your code coverage tool to:
|
|
120
|
+
- Exclude test files, vendor directories, and other non-source code paths from the report.
|
|
121
|
+
- Optionally group coverage results by logical components or modules.
|
|
122
|
+
- Define minimum coverage thresholds (overall, per-file) to enforce standards. Failing to meet thresholds
|
|
123
|
+
should ideally fail the build.
|
|
124
|
+
|
|
125
|
+
```javascript
|
|
126
|
+
// Example conceptual coverage tool setup
|
|
127
|
+
configureCoverageTool({
|
|
128
|
+
exclude: [
|
|
129
|
+
'/tests/',
|
|
130
|
+
'/specs/',
|
|
131
|
+
'/vendor/'
|
|
132
|
+
],
|
|
133
|
+
groups: {
|
|
134
|
+
'Core Logic': 'src/core',
|
|
135
|
+
'Utilities': 'src/utils',
|
|
136
|
+
'API Endpoints': 'src/api'
|
|
137
|
+
},
|
|
138
|
+
thresholds: {
|
|
139
|
+
global: {
|
|
140
|
+
statements: 90,
|
|
141
|
+
branches: 85,
|
|
142
|
+
functions: 90,
|
|
143
|
+
lines: 90
|
|
144
|
+
},
|
|
145
|
+
perFile: {
|
|
146
|
+
statements: 80,
|
|
147
|
+
lines: 80
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
2. **Coverage Goals**:
|
|
154
|
+
- Core Components: 95%+ coverage
|
|
155
|
+
- Tools & Extensions: 90%+ coverage
|
|
156
|
+
- Integration Points: 85%+ coverage
|
|
157
|
+
|
|
158
|
+
3. **Coverage Report Example**:
|
|
159
|
+
(Coverage reports typically show percentage of statements, branches, functions, and lines covered. The exact
|
|
160
|
+
format varies by tool. File paths will reflect project structure.)
|
|
161
|
+
|
|
162
|
+
```text
|
|
163
|
+
--------------------------|----------|----------|----------|----------|
|
|
164
|
+
File | % Stmts |% Branches| % Funcs | % Lines |
|
|
165
|
+
--------------------------|----------|----------|----------|----------|
|
|
166
|
+
All files | 92.34 | 89.47 | 91.82 | 92.34 |
|
|
167
|
+
lib/ | 100.0 | 100.0 | 100.0 | 100.0 |
|
|
168
|
+
aira.rb | 100.0 | 100.0 | 100.0 | 100.0 |
|
|
169
|
+
lib/aira/ | 91.8 | 88.4 | 90.9 | 91.8 |
|
|
170
|
+
agent.rb | 94.3 | 92.1 | 93.7 | 94.3 |
|
|
171
|
+
tools.rb | 89.2 | 84.7 | 88.1 | 89.2 |
|
|
172
|
+
--------------------------|----------|----------|----------|----------|
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### 4. Continuous Improvement
|
|
176
|
+
|
|
177
|
+
1. **Code Metrics**:
|
|
178
|
+
Regularly measure code metrics to identify potential areas for refactoring or improvement.
|
|
179
|
+
Use tools appropriate for your stack.
|
|
180
|
+
- **Complexity:** Measure cyclomatic complexity or cognitive complexity using relevant analysis tools.
|
|
181
|
+
- **Code Size:** Track lines of code (LOC) per module/component using code counting tools.
|
|
182
|
+
- **TODO/FIXME Notes:** Use tools or scripts to track outstanding `TODO`, `FIXME`, or similar annotations in
|
|
183
|
+
the codebase.
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
# Example conceptual commands
|
|
187
|
+
run-complexity-analyzer src/
|
|
188
|
+
run-lines-of-code-counter src/
|
|
189
|
+
find-todo-notes src/
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
2. **Quality Monitoring**:
|
|
193
|
+
- Track code smells over time
|
|
194
|
+
- Monitor test execution times
|
|
195
|
+
- Review dependency updates
|
|
196
|
+
|
|
197
|
+
3. **Technical Debt**:
|
|
198
|
+
|
|
199
|
+
```markdown
|
|
200
|
+
## Technical Debt Log
|
|
201
|
+
|
|
202
|
+
### High Priority
|
|
203
|
+
- [ ] Refactor tool registry for better concurrency
|
|
204
|
+
- [ ] Improve error context in agent responses
|
|
205
|
+
|
|
206
|
+
### Medium Priority
|
|
207
|
+
- [ ] Optimize memory usage in large operations
|
|
208
|
+
- [ ] Enhance logging granularity
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
## Language/Environment-Specific Examples
|
|
212
|
+
|
|
213
|
+
For specific examples of tool configurations (e.g., linters, static analyzers, coverage tools), CI/CD
|
|
214
|
+
pipeline snippets, or code review checklist details relevant to particular languages or frameworks,
|
|
215
|
+
please refer to the examples in the [./quality-assurance/](./quality-assurance/) sub-directory.
|
|
216
|
+
|
|
217
|
+
## Related Documentation
|
|
218
|
+
|
|
219
|
+
- [Coding Standards](./coding-standards.g.md)
|
|
220
|
+
- [Testing Guidelines](guide://testing)
|
|
221
|
+
- [Version Control](./version-control-system.g.md) (PR Templates)
|
|
222
|
+
- [Security](guide://security)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
doc-type: guide
|
|
3
|
+
title: Strategic Planning Guide
|
|
4
|
+
purpose: Documentation for ace-handbook/handbook/guides/strategic-planning.g.md
|
|
5
|
+
ace-docs:
|
|
6
|
+
last-updated: 2026-01-08
|
|
7
|
+
last-checked: 2026-03-21
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Strategic Planning Guide
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
This guide explains **why** and **how** we maintain a living roadmap that aligns day-to-day development with long-term vision.
|
|
15
|
+
|
|
16
|
+
## 1. Conceptual Model
|
|
17
|
+
|
|
18
|
+
```text
|
|
19
|
+
Vision → Strategic Objectives → Roadmap (Themes/Epics → Releases) → Tasks
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
* Vision: enduring North Star.
|
|
23
|
+
* Strategic Objectives: 6–12 m outcomes aligned to vision.
|
|
24
|
+
* Roadmap: rolling plan mapping objectives to concrete Releases.
|
|
25
|
+
* Tasks: granular units executed via workflows.
|
|
26
|
+
|
|
27
|
+
## 2. Roadmap Document Anatomy
|
|
28
|
+
|
|
29
|
+
See `/dev-taskflow/roadmap.md`. Key sections:
|
|
30
|
+
|
|
31
|
+
1. Project Vision
|
|
32
|
+
2. Strategic Objectives (table)
|
|
33
|
+
3. Key Themes & Epics (table)
|
|
34
|
+
4. Planned Major Releases (table)
|
|
35
|
+
5. Cross-Release Dependencies
|
|
36
|
+
6. Update History
|
|
37
|
+
|
|
38
|
+
## 3. Roadmap Management Lifecycle
|
|
39
|
+
|
|
40
|
+
1. **Create / Propose Change**: Use `update-roadmap.wf.md` workflow.
|
|
41
|
+
2. **Review**: Stakeholder/lead approves via PR or discussion.
|
|
42
|
+
3. **Update**: Commit changes, increment `last_reviewed` and add entry to *Update History*.
|
|
43
|
+
4. **Quarterly Checkpoint**: At start/end of each release cycle, validate roadmap relevance.
|
|
44
|
+
|
|
45
|
+
## 4. Roles & Responsibilities
|
|
46
|
+
|
|
47
|
+
| Role | Responsibilities |
|
|
48
|
+
|------|------------------|
|
|
49
|
+
| Lead Maintainer | Owns roadmap integrity, final approvals |
|
|
50
|
+
| Contributors | Propose updates, align tasks with roadmap |
|
|
51
|
+
| AI Agent | Assist drafting and validating roadmap changes |
|
|
52
|
+
|
|
53
|
+
## 5. Workflow Integration Points
|
|
54
|
+
|
|
55
|
+
* **`prepare-tasks.md`**: Must consult roadmap when confirming target releases.
|
|
56
|
+
* **Release Templates**: Reference strategic objectives in release README.
|
|
57
|
+
* **`work-on-task.md`**: Tasks should link back to their roadmap Epic/Theme where applicable.
|
|
58
|
+
|
|
59
|
+
## 6. Tips & Common Pitfalls
|
|
60
|
+
|
|
61
|
+
* Avoid overly granular detail in roadmap—keep tactical work in tasks.
|
|
62
|
+
* Review metrics regularly; retire objectives once met.
|
|
63
|
+
* Keep roadmap lightweight—update tables, not essays.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Last Updated
|
|
68
|
+
|
|
69
|
+
2025-05-07
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Ruby Troubleshooting
|
|
2
|
+
|
|
3
|
+
Specific tools and techniques for debugging Ruby applications.
|
|
4
|
+
|
|
5
|
+
## Core tools & tips
|
|
6
|
+
|
|
7
|
+
* **Read the stack trace first** – top line shows the crash site, lower lines show the call chain.
|
|
8
|
+
* **Interactive debuggers**
|
|
9
|
+
* `binding.pry` for a REPL‑style breakpoint.
|
|
10
|
+
* `byebug` (Ruby ≤ 3.0) or `debug` (Ruby ≥ 3.1) for GDB‑like stepping, breakpoints, watch expressions.
|
|
11
|
+
* **Rails specifics**
|
|
12
|
+
* Tune log levels (`config.log_level`) and stream to STDOUT when needed.
|
|
13
|
+
* Use view helpers (`debug`, `inspect`) to dump vars in templates during UI bugs.
|
|
14
|
+
* **Memory leaks** – Valgrind & gems like `memory_profiler`, `derailed_benchmarks`.
|
|
15
|
+
|
|
16
|
+
## Quick diagnostic checklist
|
|
17
|
+
|
|
18
|
+
1. Re‑run failing test with `--backtrace` for full context.
|
|
19
|
+
2. Drop `binding.pry` at suspect line, inspect locals, call `ls` to list methods.
|
|
20
|
+
3. If timing‑related, add `Rails.logger.debug` statements and compare dev vs prod logs.
|
|
21
|
+
4. For gem/environment discrepancies, reproduce in a pristine `bundle exec` shell.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Rust Troubleshooting
|
|
2
|
+
|
|
3
|
+
Specific tools and techniques for debugging Rust applications.
|
|
4
|
+
|
|
5
|
+
## Core tools & tips
|
|
6
|
+
|
|
7
|
+
* **Turn on backtraces**: `RUST_BACKTRACE=1 cargo run` prints a full panic trace.
|
|
8
|
+
* **Native debuggers**
|
|
9
|
+
* `rust-gdb` for GNU Debugger workflow with Rust pretty‑printers.
|
|
10
|
+
* `rust-lldb` (LLVM) for macOS or LLDB fans.
|
|
11
|
+
* **IDE integration** – VS Code `code-lldb` or CLion give graphical breakpoints & variable views.
|
|
12
|
+
* **Build in debug mode** (`cargo build`) to keep symbols; switch to `--release` only after reproducing.
|
|
13
|
+
* **Common probes**: `dbg!()` macro, `println!("{:?}", var)`; run unit tests with `cargo test -- --nocapture`.
|
|
14
|
+
|
|
15
|
+
## Quick diagnostic checklist
|
|
16
|
+
|
|
17
|
+
1. Run failing binary with `RUST_BACKTRACE=full`.
|
|
18
|
+
2. In LLDB: `break set -n function_name`, `run`, `frame variable`, `next`.
|
|
19
|
+
3. Suspect UB? Compile with address sanitizer (`-Zsanitizer=address`) or use Clippy’s `pedantic` lints.
|
|
20
|
+
4. Threading issues – `cargo flamegraph` or `tokio-console` for async bottlenecks.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# TypeScript Troubleshooting
|
|
2
|
+
|
|
3
|
+
Specific tools and techniques for debugging TypeScript applications, covering both server-side (Node/Deno) and
|
|
4
|
+
client-side (browser) scenarios.
|
|
5
|
+
|
|
6
|
+
## Server‑side (Node / Deno)
|
|
7
|
+
|
|
8
|
+
* **Node inspector** – `node --inspect` (or `node --inspect --require ts-node/register app.ts`) opens Chrome
|
|
9
|
+
DevTools or lets VS Code attach.
|
|
10
|
+
* **VS Code launch config** example:
|
|
11
|
+
|
|
12
|
+
```jsonc
|
|
13
|
+
{
|
|
14
|
+
"type": "node",
|
|
15
|
+
"program": "${workspaceFolder}/src/app.ts",
|
|
16
|
+
"outFiles": ["${workspaceFolder}/dist/**/*.js"]
|
|
17
|
+
}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
* **Auto‑attach** in VS Code terminal for ad‑hoc scripts.
|
|
21
|
+
* **Security reminder** – never expose the inspector on public interfaces in production.
|
|
22
|
+
|
|
23
|
+
## Client‑side (browser)
|
|
24
|
+
|
|
25
|
+
* **Always emit source maps** – `tsc --sourceMap` or `"sourceMap": true` in *tsconfig.json*.
|
|
26
|
+
* **Chrome/Edge DevTools** display authored TypeScript when maps are present.
|
|
27
|
+
* **VS Code** offers built‑in Chrome/Edge debug launchers for static HTML or `vite/webpack` dev servers.
|
|
28
|
+
* **Typical flow** – set breakpoint in `.ts`, refresh page; DevTools pauses on TS line, step, inspect variables.
|
|
29
|
+
|
|
30
|
+
## Quick diagnostic checklist
|
|
31
|
+
|
|
32
|
+
1. Confirm maps load (`chrome://inspect` → “Authored” section shows *.ts*).
|
|
33
|
+
2. For Node, if breakpoints never hit, check `outDir` vs `outFiles` glob mismatch.
|
|
34
|
+
3. Watch out for "Cannot launch program because corresponding JavaScript cannot be found" – usually missing
|
|
35
|
+
`sourceMap`.
|
|
36
|
+
4. Deno: `deno run --inspect-brk main.ts` and attach DevTools or VS Code.
|