Skip to content

Commit beb3ea7

Browse files
committed
chore: update documentation for consistency and clarity
- Reformatted multiple documentation files to enhance readability and maintain consistency across the project. - Adjusted line breaks and spacing in various sections, including project overviews, troubleshooting guides, and API references. - Improved clarity in the integration testing framework documentation and other related files. These changes contribute to a more polished and user-friendly documentation experience for contributors and users of the Gold Digger project.
1 parent 592be1d commit beb3ea7

50 files changed

Lines changed: 179835 additions & 164084 deletions

Some content is hidden

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

.kiro/specs/documentation-setup/design.md

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,19 @@
22

33
## Overview
44

5-
This design establishes a comprehensive documentation system for Gold Digger that combines user-focused guides (mdBook) with API documentation (rustdoc) in a unified GitHub Pages site. The system will provide a seamless experience for both end users learning to use the tool and developers contributing to the codebase.
5+
This design establishes a comprehensive documentation system for Gold Digger that combines
6+
user-focused guides (mdBook) with API documentation (rustdoc) in a unified GitHub Pages site. The
7+
system will provide a seamless experience for both end users learning to use the tool and developers
8+
contributing to the codebase.
69

710
The documentation architecture follows a dual-purpose approach:
811

9-
- **User Documentation**: mdBook-powered guides covering installation, usage, configuration, and troubleshooting
10-
- **Developer Documentation**: rustdoc-generated API documentation with cross-references to user guides
11-
- **Unified Deployment**: Single GitHub Pages site serving both documentation types with consistent navigation
12+
- **User Documentation**: mdBook-powered guides covering installation, usage, configuration, and
13+
troubleshooting
14+
- **Developer Documentation**: rustdoc-generated API documentation with cross-references to user
15+
guides
16+
- **Unified Deployment**: Single GitHub Pages site serving both documentation types with consistent
17+
navigation
1218

1319
## Architecture
1420

@@ -60,7 +66,8 @@ The mdBook setup will include seven key plugins:
6066

6167
**Core Plugins (Required):**
6268

63-
1. **mdbook-admonish**: Provides styled callout boxes for notes, warnings, tips, and important information
69+
1. **mdbook-admonish**: Provides styled callout boxes for notes, warnings, tips, and important
70+
information
6471
2. **mdbook-mermaid**: Enables diagram rendering for architecture and flow diagrams
6572
3. **mdbook-linkcheck**: Validates all internal and external links during build
6673
4. **mdbook-toc**: Automatically generates table of contents for long pages
@@ -291,7 +298,8 @@ graph TD
291298

292299
### Content Types and Templates
293300

294-
1. **Installation Pages**: Step-by-step platform-specific instructions with tabbed content for different platforms
301+
1. **Installation Pages**: Step-by-step platform-specific instructions with tabbed content for
302+
different platforms
295303
2. **Usage Pages**: Practical examples with input/output samples and admonitions for important notes
296304
3. **Security Pages**: Warning admonitions with best practices and security checklists
297305
4. **API Pages**: Cross-references between mdBook and rustdoc with "Edit on GitHub" links
@@ -404,4 +412,5 @@ Add documentation checks to `.pre-commit-config.yaml`:
404412
pass_filenames: false
405413
```
406414
407-
This design provides a comprehensive documentation system that serves both users and developers while integrating seamlessly with Gold Digger's existing development workflow and quality standards.
415+
This design provides a comprehensive documentation system that serves both users and developers
416+
while integrating seamlessly with Gold Digger's existing development workflow and quality standards.

.kiro/specs/documentation-setup/requirements.md

Lines changed: 89 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -2,101 +2,149 @@
22

33
## Introduction
44

5-
This feature establishes a comprehensive documentation system for Gold Digger that combines API documentation (rustdoc) with user-focused guides (mdBook) to serve both developers and end users. The documentation will be hosted on GitHub Pages and include interactive features like admonitions, diagrams, link validation, table of contents generation, and internationalization support.
5+
This feature establishes a comprehensive documentation system for Gold Digger that combines API
6+
documentation (rustdoc) with user-focused guides (mdBook) to serve both developers and end users.
7+
The documentation will be hosted on GitHub Pages and include interactive features like admonitions,
8+
diagrams, link validation, table of contents generation, and internationalization support.
69

710
## Requirements
811

912
### Requirement 1
1013

11-
**User Story:** As a Gold Digger user, I want comprehensive documentation that explains how to use the tool effectively, so that I can quickly understand installation, configuration, and usage patterns without reading source code.
14+
**User Story:** As a Gold Digger user, I want comprehensive documentation that explains how to use
15+
the tool effectively, so that I can quickly understand installation, configuration, and usage
16+
patterns without reading source code.
1217

1318
#### Acceptance Criteria
1419

15-
1. WHEN a user visits the documentation site THEN they SHALL see a clear landing page with navigation to user guides, API documentation, and examples
16-
2. WHEN a user needs installation instructions THEN they SHALL find step-by-step guides for different platforms (Windows, macOS, Linux)
17-
3. WHEN a user wants to understand configuration options THEN they SHALL find detailed explanations of CLI flags, environment variables, and their precedence
18-
4. WHEN a user needs usage examples THEN they SHALL find practical examples for common use cases (CSV export, JSON output, database connections)
19-
5. WHEN a user encounters errors THEN they SHALL find troubleshooting guides with common issues and solutions
20+
1. WHEN a user visits the documentation site THEN they SHALL see a clear landing page with
21+
navigation to user guides, API documentation, and examples
22+
2. WHEN a user needs installation instructions THEN they SHALL find step-by-step guides for
23+
different platforms (Windows, macOS, Linux)
24+
3. WHEN a user wants to understand configuration options THEN they SHALL find detailed explanations
25+
of CLI flags, environment variables, and their precedence
26+
4. WHEN a user needs usage examples THEN they SHALL find practical examples for common use cases
27+
(CSV export, JSON output, database connections)
28+
5. WHEN a user encounters errors THEN they SHALL find troubleshooting guides with common issues and
29+
solutions
2030

2131
### Requirement 2
2232

23-
**User Story:** As a developer contributing to Gold Digger, I want integrated API documentation alongside user guides, so that I can understand both the public interface and internal architecture.
33+
**User Story:** As a developer contributing to Gold Digger, I want integrated API documentation
34+
alongside user guides, so that I can understand both the public interface and internal architecture.
2435

2536
#### Acceptance Criteria
2637

27-
1. WHEN a developer visits the documentation THEN they SHALL find rustdoc-generated API documentation integrated with the user guides
28-
2. WHEN a developer needs to understand module structure THEN they SHALL see documented public APIs with examples and cross-references
29-
3. WHEN a developer wants to contribute THEN they SHALL find development setup guides and coding standards
30-
4. WHEN a developer needs architecture information THEN they SHALL find design documents explaining core concepts and constraints
38+
1. WHEN a developer visits the documentation THEN they SHALL find rustdoc-generated API
39+
documentation integrated with the user guides
40+
2. WHEN a developer needs to understand module structure THEN they SHALL see documented public APIs
41+
with examples and cross-references
42+
3. WHEN a developer wants to contribute THEN they SHALL find development setup guides and coding
43+
standards
44+
4. WHEN a developer needs architecture information THEN they SHALL find design documents explaining
45+
core concepts and constraints
3146

3247
### Requirement 3
3348

34-
**User Story:** As a documentation maintainer, I want automated validation and enhanced formatting features, so that I can ensure documentation quality and provide rich content without manual overhead.
49+
**User Story:** As a documentation maintainer, I want automated validation and enhanced formatting
50+
features, so that I can ensure documentation quality and provide rich content without manual
51+
overhead.
3552

3653
#### Acceptance Criteria
3754

3855
1. WHEN documentation is built THEN all internal and external links SHALL be validated automatically
3956
2. WHEN documentation includes diagrams THEN Mermaid diagrams SHALL render correctly in the output
40-
3. WHEN documentation needs emphasis THEN admonitions (notes, warnings, tips) SHALL be available and properly styled
41-
4. WHEN documentation pages are long THEN table of contents SHALL be automatically generated for navigation
42-
5. WHEN documentation needs internationalization THEN i18n helpers SHALL be available for future translation support
57+
3. WHEN documentation needs emphasis THEN admonitions (notes, warnings, tips) SHALL be available and
58+
properly styled
59+
4. WHEN documentation pages are long THEN table of contents SHALL be automatically generated for
60+
navigation
61+
5. WHEN documentation needs internationalization THEN i18n helpers SHALL be available for future
62+
translation support
4363

4464
### Requirement 4
4565

46-
**User Story:** As a project maintainer, I want the documentation to be automatically deployed to GitHub Pages, so that users always have access to up-to-date documentation without manual publishing steps.
66+
**User Story:** As a project maintainer, I want the documentation to be automatically deployed to
67+
GitHub Pages, so that users always have access to up-to-date documentation without manual publishing
68+
steps.
4769

4870
#### Acceptance Criteria
4971

50-
1. WHEN code is pushed to the main branch THEN documentation SHALL be automatically built and deployed to GitHub Pages
51-
2. WHEN rustdoc comments are updated THEN API documentation SHALL be regenerated and included in the deployment
72+
1. WHEN code is pushed to the main branch THEN documentation SHALL be automatically built and
73+
deployed to GitHub Pages
74+
2. WHEN rustdoc comments are updated THEN API documentation SHALL be regenerated and included in the
75+
deployment
5276
3. WHEN mdBook content is modified THEN user guides SHALL be rebuilt and deployed
53-
4. WHEN deployment fails THEN the build process SHALL provide clear error messages and fail the CI pipeline
77+
4. WHEN deployment fails THEN the build process SHALL provide clear error messages and fail the CI
78+
pipeline
5479
5. WHEN users visit the GitHub Pages URL THEN they SHALL see the latest version of the documentation
5580

5681
### Requirement 5
5782

58-
**User Story:** As a Gold Digger user, I want the documentation to reflect the current version and feature set, so that I can rely on accurate information that matches my installed version.
83+
**User Story:** As a Gold Digger user, I want the documentation to reflect the current version and
84+
feature set, so that I can rely on accurate information that matches my installed version.
5985

6086
#### Acceptance Criteria
6187

62-
1. WHEN documentation is generated THEN it SHALL include version information matching the current Cargo.toml version
63-
2. WHEN features are documented THEN feature flags SHALL be clearly indicated (e.g., "requires ssl feature")
88+
1. WHEN documentation is generated THEN it SHALL include version information matching the current
89+
Cargo.toml version
90+
2. WHEN features are documented THEN feature flags SHALL be clearly indicated (e.g., "requires ssl
91+
feature")
6492
3. WHEN CLI options are documented THEN they SHALL match the current clap configuration
6593
4. WHEN examples are provided THEN they SHALL work with the current codebase and be testable
6694
5. WHEN breaking changes occur THEN migration guides SHALL be provided in the documentation
6795

6896
### Requirement 6
6997

70-
**User Story:** As a security-conscious user, I want the documentation to clearly explain security considerations and best practices, so that I can use Gold Digger safely in production environments.
98+
**User Story:** As a security-conscious user, I want the documentation to clearly explain security
99+
considerations and best practices, so that I can use Gold Digger safely in production environments.
71100

72101
#### Acceptance Criteria
73102

74-
1. WHEN users read about database connections THEN they SHALL find security warnings about credential handling
75-
2. WHEN users configure TLS/SSL THEN they SHALL find clear guidance on certificate validation and secure connection options
76-
3. WHEN users handle sensitive data THEN they SHALL find best practices for output file permissions and credential redaction
77-
4. WHEN users deploy in production THEN they SHALL find security checklists and hardening recommendations
78-
5. WHEN security vulnerabilities are discovered THEN they SHALL be documented with mitigation strategies
103+
1. WHEN users read about database connections THEN they SHALL find security warnings about
104+
credential handling
105+
2. WHEN users configure TLS/SSL THEN they SHALL find clear guidance on certificate validation and
106+
secure connection options
107+
3. WHEN users handle sensitive data THEN they SHALL find best practices for output file permissions
108+
and credential redaction
109+
4. WHEN users deploy in production THEN they SHALL find security checklists and hardening
110+
recommendations
111+
5. WHEN security vulnerabilities are discovered THEN they SHALL be documented with mitigation
112+
strategies
79113

80114
### Requirement 7
81115

82-
**User Story:** As a documentation contributor, I want markdown formatting to be consistent and compatible with both mdBook and the existing project standards, so that documentation maintains quality and integrates seamlessly with the build process.
116+
**User Story:** As a documentation contributor, I want markdown formatting to be consistent and
117+
compatible with both mdBook and the existing project standards, so that documentation maintains
118+
quality and integrates seamlessly with the build process.
83119

84120
#### Acceptance Criteria
85121

86-
1. WHEN documentation markdown is written THEN it SHALL be compatible with mdBook rendering requirements
87-
2. WHEN mdformat is run via justfile or pre-commit THEN it SHALL NOT break mdBook-specific syntax or formatting
88-
3. WHEN documentation is built THEN markdown formatting SHALL pass existing project linting standards
89-
4. WHEN contributors write documentation THEN they SHALL be able to use existing formatting tools without conflicts
90-
5. WHEN mdBook plugins require specific markdown syntax THEN the mdformat configuration SHALL preserve that syntax
122+
1. WHEN documentation markdown is written THEN it SHALL be compatible with mdBook rendering
123+
requirements
124+
2. WHEN mdformat is run via justfile or pre-commit THEN it SHALL NOT break mdBook-specific syntax or
125+
formatting
126+
3. WHEN documentation is built THEN markdown formatting SHALL pass existing project linting
127+
standards
128+
4. WHEN contributors write documentation THEN they SHALL be able to use existing formatting tools
129+
without conflicts
130+
5. WHEN mdBook plugins require specific markdown syntax THEN the mdformat configuration SHALL
131+
preserve that syntax
91132

92133
### Requirement 8
93134

94-
**User Story:** As a developer working on Gold Digger, I want convenient justfile recipes for documentation tasks, so that I can easily build, serve, and maintain documentation locally without memorizing complex commands.
135+
**User Story:** As a developer working on Gold Digger, I want convenient justfile recipes for
136+
documentation tasks, so that I can easily build, serve, and maintain documentation locally without
137+
memorizing complex commands.
95138

96139
#### Acceptance Criteria
97140

98-
1. WHEN a developer wants to build documentation THEN they SHALL run `just docs-build` to generate both mdBook and rustdoc output
99-
2. WHEN a developer wants to serve documentation locally THEN they SHALL run `just docs-serve` to start a local development server
100-
3. WHEN a developer wants to clean documentation artifacts THEN they SHALL run `just docs-clean` to remove generated files
101-
4. WHEN a developer wants to install documentation dependencies THEN they SHALL run `just docs-install` to set up mdBook and plugins
102-
5. WHEN a developer wants to validate documentation THEN they SHALL run `just docs-check` to run link checking and formatting validation
141+
1. WHEN a developer wants to build documentation THEN they SHALL run `just docs-build` to generate
142+
both mdBook and rustdoc output
143+
2. WHEN a developer wants to serve documentation locally THEN they SHALL run `just docs-serve` to
144+
start a local development server
145+
3. WHEN a developer wants to clean documentation artifacts THEN they SHALL run `just docs-clean` to
146+
remove generated files
147+
4. WHEN a developer wants to install documentation dependencies THEN they SHALL run
148+
`just docs-install` to set up mdBook and plugins
149+
5. WHEN a developer wants to validate documentation THEN they SHALL run `just docs-check` to run
150+
link checking and formatting validation

.kiro/specs/gold-digger/design.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22

33
## Overview
44

5-
Gold Digger is architected as a single-purpose CLI tool that transforms MySQL/MariaDB query results into structured output formats. The design emphasizes reliability, security, and composability for automation workflows.
5+
Gold Digger is architected as a single-purpose CLI tool that transforms MySQL/MariaDB query results
6+
into structured output formats. The design emphasizes reliability, security, and composability for
7+
automation workflows.
68

79
### Design Principles
810

9-
- **CLI-first with Environment Fallback**: CLI flags take precedence over environment variables for flexible deployment
11+
- **CLI-first with Environment Fallback**: CLI flags take precedence over environment variables for
12+
flexible deployment
1013
- **Offline-first**: No external service dependencies at runtime
1114
- **Fail-fast**: Clear error messages with standardized exit codes (0-5)
1215
- **Memory-efficient**: Streaming processing for large result sets with O(row_width) memory usage
@@ -976,7 +979,9 @@ fn execute_query_workflow(config: Config) -> Result<()> {
976979

977980
### Error Handling Flow
978981

979-
The application uses a centralized error handling approach where all errors are mapped to standardized exit codes (Requirements 4.1-4.7). The main function catches all errors and calls `std::process::exit()` with the appropriate code.
982+
The application uses a centralized error handling approach where all errors are mapped to
983+
standardized exit codes (Requirements 4.1-4.7). The main function catches all errors and calls
984+
`std::process::exit()` with the appropriate code.
980985

981986
## Performance Characteristics
982987

0 commit comments

Comments
 (0)