π€ Kelos User Agent @gjkim42
Summary
Two `spec.taskTemplate` fields are fully implemented and in active use but completely absent from `docs/reference.md`:
- `spec.taskTemplate.metadata` β adds custom labels and annotations to spawned Tasks, with Go template variable support
- `spec.taskTemplate.upstreamRepo` β sets `KELOS_UPSTREAM_REPO` in agent containers for fork workflows
The first field appears in example 10 (`examples/10-taskspawner-github-webhook/taskspawner.yaml`, lines 115β124), so new users following that example can see it in action but have no reference to explain it.
What's missing
1. `spec.taskTemplate.metadata` β not in reference.md
`examples/10-taskspawner-github-webhook/taskspawner.yaml` uses it:
```yaml
metadata:
labels:
kelos.dev/trigger: "webhook"
kelos.dev/event: "{{.Event}}"
kelos.dev/action: "{{.Action}}"
annotations:
kelos.dev/github-url: "{{.URL}}"
kelos.dev/github-sender: "{{.Sender}}"
```
But `docs/reference.md` has no rows for:
- `spec.taskTemplate.metadata.labels` β map of label key β Go template value; merged into spawned Task labels; same template variables as `branch` and `promptTemplate`
- `spec.taskTemplate.metadata.annotations` β map of annotation key β Go template value
Key semantics new users need to know:
- Values support the same Go template variables as `branch` and `promptTemplate`
- The `kelos.dev/taskspawner` label is always set to the TaskSpawner name; any user value for that key is overridden
- Source annotations (e.g. `kelos.dev/source-kind`) are applied after rendering and override conflicting user values
2. `spec.taskTemplate.upstreamRepo` β not in reference.md
`self-development/kelos-pr-responder.yaml` references `KELOS_UPSTREAM_REPO` as an env var injected by this field, but neither the field name nor the env var are documented anywhere in user-facing docs.
Missing entry for:
- `spec.taskTemplate.upstreamRepo` β upstream repository (`owner/repo` format) injected as `KELOS_UPSTREAM_REPO` into agent containers; typically auto-derived from `githubIssues.repo` / `githubPullRequests.repo` but can be set explicitly for fork workflows
Suggested fix
Add the following rows to the `spec.taskTemplate` table in `docs/reference.md`:
| Field |
Description |
Required |
| `spec.taskTemplate.metadata.labels` |
Labels added to spawned Tasks; values support Go template variables (same as `branch`/`promptTemplate`); `kelos.dev/taskspawner` is always set and overrides user values |
No |
| `spec.taskTemplate.metadata.annotations` |
Annotations added to spawned Tasks; values support Go template variables; source annotations override conflicting user values |
No |
| `spec.taskTemplate.upstreamRepo` |
Upstream repository (`owner/repo`) injected as `KELOS_UPSTREAM_REPO` into the agent container; auto-derived from `githubIssues.repo`/`githubPullRequests.repo` when set, but can be overridden explicitly |
No |
π€ Kelos User Agent @gjkim42
Summary
Two `spec.taskTemplate` fields are fully implemented and in active use but completely absent from `docs/reference.md`:
The first field appears in example 10 (`examples/10-taskspawner-github-webhook/taskspawner.yaml`, lines 115β124), so new users following that example can see it in action but have no reference to explain it.
What's missing
1. `spec.taskTemplate.metadata` β not in reference.md
`examples/10-taskspawner-github-webhook/taskspawner.yaml` uses it:
```yaml
metadata:
labels:
kelos.dev/trigger: "webhook"
kelos.dev/event: "{{.Event}}"
kelos.dev/action: "{{.Action}}"
annotations:
kelos.dev/github-url: "{{.URL}}"
kelos.dev/github-sender: "{{.Sender}}"
```
But `docs/reference.md` has no rows for:
Key semantics new users need to know:
2. `spec.taskTemplate.upstreamRepo` β not in reference.md
`self-development/kelos-pr-responder.yaml` references `KELOS_UPSTREAM_REPO` as an env var injected by this field, but neither the field name nor the env var are documented anywhere in user-facing docs.
Missing entry for:
Suggested fix
Add the following rows to the `spec.taskTemplate` table in `docs/reference.md`: