|
44 | 44 | - Type-annotate all public function signatures. |
45 | 45 | - Docstrings on all public classes and methods (numpy style). These must |
46 | 46 | include sections Parameters, Returns and Raises, where applicable. |
| 47 | +- Docstring summary must be a single line no longer than 72 characters |
| 48 | + (the `max-doc-length` setting in `pyproject.toml`). If the summary |
| 49 | + does not fit, shorten the wording rather than wrapping to a second |
| 50 | + line. |
47 | 51 | - Prefer flat over nested, explicit over clever. |
48 | 52 | - Write straightforward code; do not add defensive checks for unlikely |
49 | 53 | edge cases. |
|
173 | 177 |
|
174 | 178 | ## Workflow |
175 | 179 |
|
| 180 | +- Use a two-phase workflow for all non-trivial changes: |
| 181 | + - **Phase 1 โ Implementation:** implement the change (source code, |
| 182 | + docs, architecture updates). Do not create new tests or run existing |
| 183 | + tests. Present the implementation for review and iterate until |
| 184 | + approved. |
| 185 | + - **Phase 2 โ Verification:** once the implementation is approved, add |
| 186 | + or update tests, then run linting (`pixi run fix`, `pixi run check`) |
| 187 | + and all test suites (`pixi run unit-tests`, |
| 188 | + `pixi run integration-tests`, `pixi run script-tests`). |
176 | 189 | - All open issues, design questions, and planned improvements are |
177 | 190 | tracked in `docs/architecture/issues_open.md`, ordered by priority. |
178 | 191 | When an issue is fully implemented, move it from that file to |
179 | 192 | `docs/architecture/issues_closed.md`. When the resolution affects the |
180 | 193 | architecture, update the relevant sections of |
181 | 194 | `docs/architecture/architecture.md`. |
182 | 195 | - After changes, run linting and formatting fixes with `pixi run fix`. |
183 | | - Do not check what was auto-fixed, just accept the fixes and move on. |
184 | | - Then, run linting and formatting checks with `pixi run check` and |
185 | | - address any remaining issues until the code is clean. |
| 196 | + This also regenerates `docs/architecture/package-structure-full.md` |
| 197 | + and `docs/architecture/package-structure-short.md` automatically โ do |
| 198 | + not edit those files by hand. Do not check what was auto-fixed, just |
| 199 | + accept the fixes and move on. Then, run linting and formatting checks |
| 200 | + with `pixi run check` and address any remaining issues until the code |
| 201 | + is clean. |
186 | 202 | - After changes, run unit tests with `pixi run unit-tests`. |
187 | 203 | - After changes, run integration tests with |
188 | 204 | `pixi run integration-tests`. |
|
0 commit comments