Skip to content

Commit 9cbf5b6

Browse files
docs: align documentation with code and adopt LF-style conventions
- Rewrite README, CONTRIBUTING, CODE_OF_CONDUCT, GOVERNANCE, RELEASE to follow Linux Foundation documentation conventions - Fix all stale botanu_use_case references to botanu_workflow across docs - Correct event/run/outcome terminology throughout - Remove botanu_outcome from public API exports (keep emit_outcome only) - Fix enable(), BotanuConfig, RunContext signatures to match implementation - Update all code examples to use abstract patterns (do_work, etc.) - Align span attributes, defaults, and env vars with actual code Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 666028f commit 9cbf5b6

23 files changed

Lines changed: 825 additions & 707 deletions

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1414
- Initial open-source release under Apache-2.0 license
1515
- **Core SDK**
1616
- `enable()` / `disable()` bootstrap functions for SDK initialization
17-
- `@botanu_use_case` decorator with UUIDv7 run_id generation
17+
- `@botanu_workflow` decorator with UUIDv7 run_id generation
1818
- `@botanu_outcome` decorator for sub-function outcome tracking
1919
- `emit_outcome()` helper for recording business outcomes
2020
- `set_business_context()` for cost attribution dimensions

CODE_OF_CONDUCT.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1-
# Botanu Code of Conduct
1+
# Code of Conduct
22

3-
In the interest of fostering an open and welcoming environment, we as contributors and maintainers agree to abide by the Code of Conduct available at https://lfprojects.org/policies/code-of-conduct/
3+
All participants in the Botanu project — including contributors, maintainers,
4+
and community members — are expected to treat each other with respect and
5+
professionalism.
6+
7+
This project has adopted the
8+
[Contributor Covenant v2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/)
9+
as its Code of Conduct.
10+
11+
The Code of Conduct applies to all project spaces, including GitHub repositories,
12+
issue trackers, discussion forums, and events.
13+
14+
## Reporting
15+
16+
If you experience or witness unacceptable behaviour, please report it by
17+
contacting the project maintainers listed in [MAINTAINERS.md](./MAINTAINERS.md).
18+
19+
All reports will be reviewed and investigated promptly and fairly. Maintainers
20+
are obligated to respect the privacy and security of the reporter.

CONTRIBUTING.md

Lines changed: 42 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,28 @@
11
# Contributing to Botanu SDK
22

3-
Thank you for your interest in contributing to Botanu SDK! This document provides guidelines and instructions for contributing.
3+
We welcome contributions of all kinds — bug fixes, new features, documentation
4+
improvements, and more. This guide explains how to get started.
45

56
## Developer Certificate of Origin (DCO)
67

7-
This project requires all commits to be signed off in accordance with the [Developer Certificate of Origin (DCO)](https://developercertificate.org/). This certifies that you have the right to submit your contribution under the project's open source license.
8+
This project requires all commits to be signed off in accordance with the
9+
[Developer Certificate of Origin (DCO)](https://developercertificate.org/).
10+
The DCO certifies that you have the right to submit your contribution under the
11+
project's open-source license.
812

9-
To sign off your commits, add the `-s` flag to your git commit command:
13+
To sign off your commits, add the `-s` flag:
1014

1115
```bash
1216
git commit -s -m "Your commit message"
1317
```
1418

15-
This will add a `Signed-off-by` line to your commit message:
19+
This adds a `Signed-off-by` line to your commit message:
1620

1721
```
1822
Signed-off-by: Your Name <your.email@example.com>
1923
```
2024

21-
If you've already made commits without signing off, you can amend them:
25+
If you have already made commits without signing off, you can amend them:
2226

2327
```bash
2428
# Amend the last commit
@@ -43,12 +47,17 @@ git rebase --signoff HEAD~N # where N is the number of commits
4347
pip install -e ".[dev]"
4448
```
4549

46-
3. Run tests:
50+
3. Install pre-commit hooks:
51+
```bash
52+
pre-commit install
53+
```
54+
55+
4. Run tests:
4756
```bash
4857
pytest tests/
4958
```
5059

51-
4. Run linting and type checks:
60+
5. Run linting and type checks:
5261
```bash
5362
ruff check src/ tests/
5463
ruff format src/ tests/
@@ -57,11 +66,26 @@ git rebase --signoff HEAD~N # where N is the number of commits
5766

5867
## Pull Request Process
5968

60-
1. Fork the repository and create a feature branch
69+
1. Fork the repository and create a feature branch from `main`
6170
2. Make your changes with appropriate tests
6271
3. Ensure all tests pass and linting is clean
6372
4. Sign off all commits with DCO
64-
5. Submit a pull request with a clear description
73+
5. Submit a pull request with a clear description of the change
74+
75+
Pull requests require approval from at least one [maintainer](./MAINTAINERS.md)
76+
before merging.
77+
78+
## Finding Work
79+
80+
- Look for issues labelled
81+
[`good first issue`](https://github.com/botanu-ai/botanu-sdk-python/labels/good%20first%20issue)
82+
if you are new to the project
83+
- Issues labelled
84+
[`help wanted`](https://github.com/botanu-ai/botanu-sdk-python/labels/help%20wanted)
85+
are ready for community contributions
86+
- Join the discussion on
87+
[GitHub Discussions](https://github.com/botanu-ai/botanu-sdk-python/discussions)
88+
to ask questions or propose ideas
6589

6690
## Code Style
6791

@@ -72,16 +96,21 @@ git rebase --signoff HEAD~N # where N is the number of commits
7296

7397
## Reporting Issues
7498

75-
Please use GitHub Issues to report bugs or request features. Include:
99+
Please use [GitHub Issues](https://github.com/botanu-ai/botanu-sdk-python/issues)
100+
to report bugs or request features. Include:
101+
76102
- A clear description of the issue
77103
- Steps to reproduce (for bugs)
78-
- Expected vs actual behavior
104+
- Expected versus actual behaviour
79105
- Python version and OS
80106

81107
## Code of Conduct
82108

83-
This project follows the [LF Projects Code of Conduct](https://lfprojects.org/policies/code-of-conduct/).
109+
This project follows the
110+
[LF Projects Code of Conduct](https://lfprojects.org/policies/code-of-conduct/).
111+
See [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md).
84112

85113
## License
86114

87-
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.
115+
By contributing, you agree that your contributions will be licensed under the
116+
[Apache License 2.0](./LICENSE).

GOVERNANCE.md

Lines changed: 43 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,71 @@
11
# Governance
22

3-
This project follows the governance model of the [LF AI & Data Foundation](https://lfaidata.foundation/).
3+
This document describes the governance model for the Botanu SDK project.
44

55
## Roles
66

7+
### Users
8+
9+
Anyone who uses the SDK. Users are encouraged to participate by filing issues,
10+
asking questions on [GitHub Discussions](https://github.com/botanu-ai/botanu-sdk-python/discussions),
11+
and providing feedback.
12+
13+
### Contributors
14+
15+
Anyone who contributes to the project — opening issues, submitting pull requests,
16+
improving documentation, or participating in discussions. All contributions
17+
require [DCO sign-off](./CONTRIBUTING.md#developer-certificate-of-origin-dco).
18+
719
### Maintainers
820

921
Maintainers are responsible for:
22+
1023
- Reviewing and merging pull requests
1124
- Triaging issues
1225
- Releasing new versions
1326
- Ensuring project quality and direction
1427

1528
Current maintainers are listed in [MAINTAINERS.md](./MAINTAINERS.md).
1629

17-
### Contributors
30+
## Becoming a Maintainer
1831

19-
Anyone can contribute by:
20-
- Opening issues
21-
- Submitting pull requests
22-
- Participating in discussions
23-
- Improving documentation
32+
Maintainers are contributors who have demonstrated:
2433

25-
See [CONTRIBUTING.md](./CONTRIBUTING.md) for contribution guidelines.
34+
- Sustained, high-quality contributions over time
35+
- Deep understanding of the codebase and project goals
36+
- Commitment to the community and the Code of Conduct
37+
38+
New maintainers are nominated by existing maintainers and approved by consensus.
2639

2740
## Decision Making
2841

29-
- Technical decisions are made through pull request reviews
42+
- Day-to-day technical decisions are made through pull request reviews
3043
- Significant changes require approval from at least one maintainer
31-
- Disputes are resolved by maintainer consensus
44+
- Architectural or breaking changes should be discussed in a GitHub issue or
45+
discussion before implementation
46+
- Disputes are resolved by maintainer consensus; if consensus cannot be reached,
47+
the lead maintainer has final say
48+
49+
## Scope
50+
51+
### In Scope
52+
53+
- The Botanu Python SDK (`botanu` PyPI package)
54+
- Documentation in the `docs/` directory
55+
- CI/CD workflows and release automation
56+
- Integration guides for OpenTelemetry Collector
57+
58+
### Out of Scope
59+
60+
- The Botanu Collector (separate repository)
61+
- The Botanu Cost Engine (separate repository)
62+
- The Botanu UI (separate repository)
63+
- Vendor-specific backend integrations
3264

3365
## Code of Conduct
3466

3567
All participants must follow the [Code of Conduct](./CODE_OF_CONDUCT.md).
3668

3769
## License
3870

39-
This project is licensed under Apache-2.0. See [LICENSE](./LICENSE).
71+
This project is licensed under [Apache-2.0](./LICENSE).

0 commit comments

Comments
 (0)