Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
2fe538a
delphi: create ws/argos-dev from software/application-software/argos/…
github-actions[bot] Sep 27, 2026
e976ec2
delphi: refresh ws/argos-dev from main
github-actions[bot] Sep 27, 2026
c1e0b54
delphi: refresh ws/argos-dev from main
github-actions[bot] Sep 28, 2026
f0bdecf
delphi: refresh ws/argos-dev from main
github-actions[bot] Sep 29, 2026
96e9fc8
delphi: refresh ws/argos-dev from main
github-actions[bot] Sep 29, 2026
3045e04
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 1, 2026
1008fd2
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 1, 2026
ee49c4f
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 4, 2026
88da688
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 4, 2026
b8aa5df
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 7, 2026
ecba2f2
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 7, 2026
51aa07c
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 7, 2026
4950f44
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 7, 2026
6bed4c9
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 7, 2026
260b37c
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 8, 2026
364222f
delphi: refresh ws/argos-dev from main
github-actions[bot] Oct 9, 2026
baa2f90
argos-dev: allow running develop's worktree, not just fast-forwarding it
bracyw Oct 10, 2026
a6afb15
argos-dev: throwaway branches for code changes without a ticket
bracyw Oct 10, 2026
f9113a2
Merge pull request #31 from Northeastern-Electric-Racing/argos-dev-ru…
bracyw Oct 10, 2026
758ecb1
argos-dev: precise throwaway and develop wording
bracyw Oct 10, 2026
7fc1af5
Merge pull request #33 from Northeastern-Electric-Racing/argos-dev-th…
bracyw Oct 10, 2026
904b5b0
delphi: propose ws/argos-dev to main
github-actions[bot] Oct 10, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
---
name: new-worktree
description: Create or reuse a worktree for a branch of a code repo (worktrees/<repo>/<branch>). Worktrees are the default way to make or check out any new branch; use this before starting a ticket, reviewing or fixing a PR branch, or any other branch work, unless the user says not to use worktrees.
description: Create or reuse a worktree for a branch of a code repo (worktrees/<repo>/<branch>), for a ticket, a PR branch, or a throwaway experiment.
---

`repos/<repo>` is a bare store (no files); every checkout of a code repo is a worktree under `worktrees/<repo>/`. `.delphi/setup.sh` makes the default branch's (`worktrees/<repo>/<default-branch>/`); keep it a clean reference: fetch and fast-forward only. Make every other branch with this script, never by switching branches in an existing worktree, unless the user explicitly says not to use worktrees.
Each code checkout is a worktree under `worktrees/<repo>/<branch>/`, made from the bare store `repos/<repo>`. `.delphi/setup.sh` makes the default branch's; run anything there, but make code changes on a branch of your own.

Run from the workspace root:

```
bash .delphi/new-worktree.sh <repo> <branch> [<base>]
```

An existing branch (local or on origin, e.g. a PR's head) is checked out; anything else is created from `<base>` (default: the repo's default branch). It's safe to re-run. It prints the worktree path: `cd` there and do all work in it.
An existing branch (local or on origin, e.g. a PR's head) is checked out; anything else is created from `<base>` (default: the repo's default branch). It's safe to re-run and prints the worktree path to work in.

After the branch merges, remove it with `git -C repos/<repo> worktree remove ../../worktrees/<repo>/<branch>`.
When you're done with a branch, remove it with `git -C repos/<repo> worktree remove ../../worktrees/<repo>/<branch>`.

Argos: always pass `origin/develop` as `<base>`. New ticket branches follow `{issue-number}-{kebab-case-title}`. Run `npm ci` in the worktree's `angular-client/` before building, testing, or running the client.
Argos: pass `origin/develop` as `<base>`. Name the branch `{issue-number}-{kebab-case-title}` for a ticket, or `throwaway-{kebab-case-title}` to try something without one. Run `npm ci` in the worktree's `angular-client/` before building, testing, or running the client.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: run-local
description: Bring up the local Argos environment for running or testing — Docker backend (right profile for what changed) + Angular client on the next free port. Use whenever you need to actually run the app locally, not just start the frontend.
---

From the ticket's worktree, run `bash <workspace>/.claude/skills/run-local/scripts/find-app.sh`. It prints `client`, `backend`, `scylla` (docker/local), and `free_client_port`.
From the worktree you want to run (a ticket's or throwaway's, or `worktrees/argos/develop/` to try current `develop`; fetch and fast-forward that one first so it isn't stale), run `bash <workspace>/.claude/skills/run-local/scripts/find-app.sh`. It prints `client`, `backend`, `scylla` (docker/local), and `free_client_port`.

- `backend=none`: ask the user to start it on the right profile (Local Development in CLAUDE.md).
- `scylla=docker` while `scylla-server/` has changes: flag that the backend is stale.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ You're in Delphi workspace `argos-dev` (branch `ws/argos-dev`); code repos are c

## Branch & Commit Conventions

- Branch from `develop` (not `main`) unless told otherwise. Branch name format: `{issue-number}-{kebab-case-title}` (e.g. `533-csv-upload-download-rules`).
- Commit message format: `#{ticket-number} - {concise description}` (e.g. `#533 - add CSV upload endpoint`).
- Branch from `develop` (not `main`) unless told otherwise. Branch name format: `{issue-number}-{kebab-case-title}` (e.g. `533-csv-upload-download-rules`), or `throwaway-{kebab-case-title}` to try something without a ticket.
- Commit message format: `#{ticket-number} - {concise description}` (e.g. `#533 - add CSV upload endpoint`). Throwaway branches have no ticket, so any short message works.

## Safety Rules

Expand All @@ -23,8 +23,8 @@ The Argos repo's `develop` is checked out at `worktrees/argos/develop/`. Paths b

## Worktrees

- `worktrees/argos/develop/` is a clean reference to `develop`. Never edit, branch, commit, or run dev servers there; only fetch and fast-forward it.
- Every ticket gets its own worktree at `worktrees/argos/<branch>/`, and every workflow (implement, test, run, commit, PR) runs there. Create or reuse one with the `new-worktree` skill, based on `origin/develop`: `bash .delphi/new-worktree.sh argos <branch> origin/develop`.
- `worktrees/argos/develop/` mirrors `develop`: run anything there (`npm ci`, tests, the backend, `/run-local`), but never edit code, branch, or commit there. The only git operations there are fetch and fast-forward.
- To change code, make a worktree on its own branch with the `new-worktree` skill, based on `origin/develop`: `bash .delphi/new-worktree.sh argos <branch> origin/develop`. Use the ticket's branch, or a `throwaway-{kebab-case-title}` branch to experiment without one. If a throwaway turns into real work, file a ticket (`create-ticket`), make the ticket's worktree from `origin/develop`, and in it run `git merge --squash throwaway-{kebab-case-title}` then `/commit`, so the work lands as one commit in the ticket format.
- A new worktree has no `node_modules`: run `npm ci` in its `angular-client/` before testing or running the client.

## Local Development
Expand Down
Loading