Skip to content

Commit 7e994c9

Browse files
authored
Merge pull request #46 from ocean/dev
Add replication tests
2 parents 19c4c7b + 8614016 commit 7e994c9

6 files changed

Lines changed: 990 additions & 11 deletions

File tree

.beads/config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
# This setting persists across clones (unlike database config which is gitignored).
4343
# Can also use BEADS_SYNC_BRANCH env var for local override.
4444
# If not set, bd sync will require you to run 'bd config set sync.branch <branch>'.
45-
# sync-branch: "beads-sync"
45+
sync-branch: "beads-sync"
4646

4747
# Multi-repo configuration (experimental - bd-307)
4848
# Allows hydrating from multiple repositories and routing writes to the correct JSONL
@@ -59,4 +59,4 @@
5959
# - linear.url
6060
# - linear.api-key
6161
# - github.org
62-
# - github.repo
62+
# - github.repo

.beads/issues.jsonl

Lines changed: 4 additions & 4 deletions
Large diffs are not rendered by default.

CLAUDE.md

Lines changed: 46 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -203,11 +203,52 @@ cd native/ecto_libsql && cargo test
203203

204204
### Development Cycle
205205

206-
1. Make changes to Elixir or Rust code
207-
2. Format: `mix format && cargo fmt`
208-
3. Run tests: `mix test && cargo test`
209-
4. Check formatting: `mix format --check-formatted`
210-
5. Commit with descriptive message
206+
#### Branch Strategy
207+
208+
**ALWAYS branch from `main`** for new work:
209+
210+
```bash
211+
git checkout main
212+
git pull origin main
213+
git checkout -b feature-descriptive-name # or bugfix-descriptive-name
214+
```
215+
216+
**Branch naming**:
217+
- Features: `feature-<descriptive-name>`
218+
- Bug fixes: `bugfix-<descriptive-name>`
219+
220+
**⚠️ CRITICAL: Preserving Untracked Files**
221+
222+
The repository often has untracked/uncommitted files (docs, notes, etc.) that must NOT be lost when switching branches. Git preserves untracked files across branch switches automatically, but:
223+
- **NEVER run `git clean`** without explicit user approval
224+
- **NEVER run `git checkout .`** or `git restore .` on the whole repo
225+
- **NEVER run `git reset --hard`** without explicit user approval
226+
- When switching branches, untracked files stay in place - this is expected
227+
228+
#### Development Steps
229+
230+
1. Create feature/bugfix branch from `main` (see above)
231+
2. Make changes to Elixir or Rust code
232+
3. ALWAYS format: `mix format --check-formatted && cargo fmt`
233+
4. Run tests: `mix test && cargo test`
234+
5. Fix any issues from formatting or tests
235+
6. **Commit ONLY files you touched** - other untracked files stay as-is
236+
237+
#### PR Workflow
238+
239+
All changes go through PRs to `main` (for review bot checks):
240+
241+
```bash
242+
git push -u origin feature-descriptive-name
243+
gh pr create --base main --title "feat: description" --body "..."
244+
```
245+
246+
After PR is merged, clean up:
247+
```bash
248+
git checkout main
249+
git pull origin main
250+
git branch -d feature-descriptive-name # Delete local branch
251+
```
211252

212253
### Adding a New NIF Function
213254

0 commit comments

Comments
 (0)