Skip to content

Commit f09cefe

Browse files
gjkim42claude
andcommitted
Sync task templates with TaskSpawners and document tasks/ directory
- Add missing triple-backtick fencing in fake-strategist-task.yaml to match kelos-fake-strategist.yaml TaskSpawner - Add inline comment in squash-commits-task.yaml explaining why it reuses the worker task name slot - Normalize YAML quoting for resource values in squash-commits-task.yaml to match the style used in all other self-development files - Add "One-Off Task Templates" section to README.md documenting the tasks/ directory, its contents, and the /squash-commits command Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 8187aed commit f09cefe

3 files changed

Lines changed: 23 additions & 5 deletions

File tree

self-development/README.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,20 @@ Creates GitHub issues for actionable improvements found.
206206
kubectl apply -f self-development/kelos-self-update.yaml
207207
```
208208

209+
## One-Off Task Templates
210+
211+
The `tasks/` directory contains standalone Task definitions used by GitHub Actions workflows for manual or utility operations. Unlike TaskSpawner-created tasks, these are applied directly via `kubectl apply` from workflow YAML.
212+
213+
### tasks/fake-strategist-task.yaml
214+
215+
Used by the `run-fake-strategist.yaml` workflow (`workflow_dispatch`). Creates a one-off strategist task identical to what the `kelos-fake-strategist` TaskSpawner would create, allowing manual triggering outside the cron schedule.
216+
217+
### tasks/squash-commits-task.yaml
218+
219+
Used by the `squash-kelos-worker-commits.yaml` workflow. Triggered by the `/squash-commits` command on a PR. Rebases and squashes all commits on the PR branch into a single commit.
220+
221+
**Important:** This task deliberately uses the name `kelos-workers-<ISSUE_NUMBER>` to occupy the same slot as the worker task, preventing the TaskSpawner from re-spawning a conflicting worker during the squash operation.
222+
209223
## Customizing for Your Repository
210224

211225
To adapt these examples for your own repository:

self-development/tasks/fake-strategist-task.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,9 @@ spec:
5959
6060
Actions:
6161
- Create a GitHub issue with your findings and proposals:
62+
```
6263
gh issue create --title "<title>" --body "<description>" --label generated-by-kelos
64+
```
6365
- Do NOT create PRs. Only create issues
6466
- Prefer well-researched issues with clear proposals over broad, vague suggestions
6567

self-development/tasks/squash-commits-task.yaml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
apiVersion: kelos.dev/v1alpha1
22
kind: Task
33
metadata:
4+
# Uses the same name as the worker task to prevent the TaskSpawner
5+
# from re-spawning a conflicting worker while squash is in progress.
46
name: kelos-workers-${ISSUE_NUMBER}
57
labels:
68
kelos.dev/type: squash-commits
@@ -19,13 +21,13 @@ spec:
1921
podOverrides:
2022
resources:
2123
requests:
22-
cpu: 250m
23-
memory: 512Mi
24-
ephemeral-storage: 4Gi
24+
cpu: "250m"
25+
memory: "512Mi"
26+
ephemeral-storage: "4Gi"
2527
limits:
2628
cpu: "1"
27-
memory: 2Gi
28-
ephemeral-storage: 4Gi
29+
memory: "2Gi"
30+
ephemeral-storage: "4Gi"
2931
prompt: |
3032
You are a coding agent.
3133

0 commit comments

Comments
 (0)