summaryrefslogtreecommitdiff
path: root/Omni/Agent
diff options
context:
space:
mode:
Diffstat (limited to 'Omni/Agent')
-rw-r--r--Omni/Agent/DESIGN.md2
-rw-r--r--Omni/Agent/WORKER_AGENT_GUIDE.md2
-rwxr-xr-xOmni/Agent/start-worker.sh6
3 files changed, 5 insertions, 5 deletions
diff --git a/Omni/Agent/DESIGN.md b/Omni/Agent/DESIGN.md
index f976b03..2d1e6e3 100644
--- a/Omni/Agent/DESIGN.md
+++ b/Omni/Agent/DESIGN.md
@@ -92,7 +92,7 @@ The Haskell implementation should replicate the logic of `start-worker.sh` but w
- **Force Checkout**: The worker must use `git checkout -f` (or equivalent) when switching to task branches to ensure untracked files (like `.tasks/counters.jsonl`) don't block the switch.
- **Base Branch Logic**:
- If the task depends on another task that is *not* yet in `live` (e.g., in `Review`), the worker should branch off the dependency's branch (`task/<dep-id>`).
- - Otherwise, fetch and branch off `origin/live` directly. Do NOT use the local worker branch (`omni-worker-N`) as the base, as it may contain temporary sync commits that shouldn't be merged.
+ - Otherwise, branch off `live` directly. Do NOT use the local worker branch (`omni-worker-N`) as the base, as it may contain temporary sync commits that shouldn't be merged.
- **Commit Hygiene**: Bundle the task status update (marking as 'Review') *inside* the feature implementation commit. This keeps the history clean (one commit per feature) and avoids separate "sync" commits for status changes.
- **Clean State**: The worker should ensure the workspace is clean (no uncommitted changes) before starting a new loop iteration.
- **Rebase Safety**: Always check the exit code of `git rebase`. If it fails (conflicts), abort immediately (`git rebase --abort`) to avoid leaving the repo in a broken interactive rebase state.
diff --git a/Omni/Agent/WORKER_AGENT_GUIDE.md b/Omni/Agent/WORKER_AGENT_GUIDE.md
index 938c98e..e832a2a 100644
--- a/Omni/Agent/WORKER_AGENT_GUIDE.md
+++ b/Omni/Agent/WORKER_AGENT_GUIDE.md
@@ -55,7 +55,7 @@ task update t-123 in-progress
2. **Check for Unmerged Work**: Look for dependencies that have existing branches (e.g., `task/t-parent-id`) which are NOT yet merged into `live`.
3. **Select Base**:
* If you find an unmerged dependency branch, check it out: `git checkout task/t-parent-id`.
- * Otherwise, start from fresh live code: `git fetch origin live && git checkout -b task/t-123 origin/live`.
+ * Otherwise, start from fresh live code: `git checkout -b task/t-123 live`.
4. **Implement**:
(Proceed to implementation)
diff --git a/Omni/Agent/start-worker.sh b/Omni/Agent/start-worker.sh
index 37c3760..8de31b9 100755
--- a/Omni/Agent/start-worker.sh
+++ b/Omni/Agent/start-worker.sh
@@ -121,9 +121,9 @@ while true; do
# that may have been generated by sync tools but are tracked in the branch.
git checkout -f "$BRANCH_NAME" >/dev/null
else
- echo "Creating new branch $BRANCH_NAME from origin/live"
- git fetch origin live >/dev/null 2>&1
- git checkout -b "$BRANCH_NAME" origin/live >/dev/null
+ echo "Creating new branch $BRANCH_NAME from live"
+ # git fetch origin live >/dev/null 2>&1 # Optional if we assume live is up to date or don't care
+ git checkout -b "$BRANCH_NAME" live >/dev/null
fi
# F. Execute Agent