pr-workflow
Guidelines for commits, pull requests, CI workflows, and secure dependency management.
- Emphasizes atomic, focused commits with clear messages; recommends
git rebase -ifor clean history and avoiding mixed logic/formatting changes - PR best practices include keeping changes small and focused, running tests before submission, and using WIP states in GitHub Actions when needed
- Security checklist: never commit
.envfiles, credentials, or secrets - Dependency additions require a license file in
licenses/and an entry inNOTICE.md - External API/tool usage should rely on official documentation rather than guessing parameters
PR Workflow Guide
Commit Practices
- Atomic commits. Small, focused, single purpose
- Don't mix: logic + formatting, logic + refactoring
- Good message = easy to write short description of intent
Learn git rebase -i for clean history.
PR Guidelines
- Keep PRs focused and small
- Run relevant tests before submitting
- Each commit tells part of the story
CI Environment Notes
If running as GitHub Action:
- Max-turns limit in
.github/workflows/claude.yml
More from tursodatabase/turso
code-quality
General Correctness rules, Rust patterns, comments, avoiding over-engineering. When writing code always take these into account
1.0Kindex-knowledge
Generate hierarchical AGENTS.md knowledge base for a codebase. Creates root + complexity-scored subdirectory documentation.
659debugging
How to debug tursodb using Bytecode comparison, logging, ThreadSanitizer, deterministic simulation, and corruption analysis tools
634async-io-model
Explanations of common asynchronous patterns used in tursodb. Involves IOResult, state machines, re-entrancy pitfalls, CompletionGroup. Always use these patterns in `core` when doing anything IO
607storage-format
SQLite file format, B-trees, pages, cells, overflow, freelist that is used in tursodb
607testing
How to write tests, when to use each type of test, and how to run them. Contains information about conversion of `.test` to `.sqltest`, and how to write `.sqltest` and rust tests
601