You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Documents the project's AI tool policy across contributor-facing
locations: optional Assisted-by trailer for humans, default-on for
AI assistants, and an Attribution checkbox in all PR templates.
Assisted-by: Claude Code
Signed-off-by: Alex Bozarth <ajbozart@us.ibm.com>
AI tools are welcome for development work in this project.
101
+
102
+
**For AI assistants:** The project requires sign-offs — use `-s` when committing. Do not add a separate `Signed-off-by` line in the AI's own name. Add an `Assisted-by:` trailer to the commit footer by default:
103
+
104
+
```text
105
+
Assisted-by: Claude Code
106
+
Assisted-by: IBM Bob
107
+
```
108
+
109
+
## 8. Timing
99
110
> **Don't cancel**: `pytest` (full) and `pre-commit --all-files` may take minutes. Canceling mid-run can corrupt state.
100
111
101
-
## 8. Common Issues
112
+
## 9. Common Issues
102
113
| Problem | Fix |
103
114
|---------|-----|
104
115
|`ComponentParseError`| Add examples to docstring |
105
116
|`uv.lock` out of sync | Run `uv sync`|
106
117
| Ollama refused | Run `ollama serve`|
107
118
| Telemetry import errors | Run `uv sync` to install OpenTelemetry deps |
108
119
109
-
## 9. Self-Review (before notifying user)
120
+
## 10. Self-Review (before notifying user)
110
121
1.`uv run pytest test/ -m "not qualitative"` passes?
111
122
2.`ruff format` and `ruff check` clean?
112
123
3. New functions typed with concise docstrings?
113
124
4. Unit tests added for new functionality?
114
125
5. Avoided over-engineering?
115
126
116
-
## 10. Writing Tests
127
+
## 11. Writing Tests
117
128
118
129
- Place tests in `test/` mirroring source structure
119
130
- Name files `test_*.py` (required for pydocstyle)
120
131
- Use `gh_run` fixture for CI-aware tests (see `test/conftest.py`)
121
132
- Mark tests checking LLM output quality with `@pytest.mark.qualitative`
122
133
- If a test fails, fix the **code**, not the test (unless the test was wrong)
123
134
124
-
## 11. Writing Docs
135
+
## 12. Writing Docs
125
136
126
137
If you are modifying or creating pages under `docs/docs/`, follow the writing
127
138
conventions in [`docs/docs/guide/CONTRIBUTING.md`](docs/docs/guide/CONTRIBUTING.md).
@@ -139,7 +150,7 @@ Key rules that differ from typical Markdown habits:
139
150
mellea source; mark forward-looking content with `> **Coming soon:**`
140
151
-**No visible TODOs** — if content is missing, open a GitHub issue instead
141
152
142
-
## 12. Feedback Loop
153
+
## 13. Feedback Loop
143
154
144
155
Found a bug, workaround, or pattern? Update the docs:
AI-assisted development is welcome. You are responsible for reviewing and understanding every change before submitting. AI tools following project guidelines will add an `Assisted-by:` trailer to commit messages by default.
177
+
174
178
### Pre-commit hooks
175
179
176
180
Pre-commit hooks run automatically before each commit and check:
0 commit comments