Skip to content

Propagate conventions to all agents and add new rules from PR reviews#786

Open
kelos-bot[bot] wants to merge 2 commits intomainfrom
kelos-config-update-latest
Open

Propagate conventions to all agents and add new rules from PR reviews#786
kelos-bot[bot] wants to merge 2 commits intomainfrom
kelos-config-update-latest

Conversation

@kelos-bot
Copy link
Copy Markdown

@kelos-bot kelos-bot bot commented Mar 24, 2026

What type of PR is this?

/kind cleanup

What this PR does / why we need it:

Updates agent configuration based on lessons learned from recent PR reviews. Two categories of changes:

1. Propagate existing conventions to all agent configs

Several conventions existed only in kelos-workers.yaml but were missing from CLAUDE.md, AGENTS.md, and agentconfig.yaml. This meant non-worker agents (dev agent, PR responder) didn't know about them, causing recurring violations:

Convention Evidence PRs
Deterministic test synchronization (no time.Sleep) #868, #882time.Sleep(50ms) flagged in concurrent tests across multiple PRs
RBAC least-privilege #859 — unnecessary delete/patch verbs on Services
Go HTTP server timeouts #851 — webhook server without timeouts; #866 — flagged by reviewer
Pin Docker base images to digests #851 — floating tags in webhook Dockerfile
Go test goroutine safety (t.Fatal in goroutines) Existing worker convention, missing from shared config

2. Two new conventions backed by review evidence

Convention Evidence
Go HTTP client timeout — never use http.DefaultClient; always create a client with explicit Timeout #866 — kelos-bot reviewer flagged http.DefaultClient.Do(req) in linear_api.go as blocking indefinitely if Linear API hangs
Reset mutable state in loops — re-initialize maps/slices at start of each iteration #902 — kelos-bot reviewer found blocking bug where GenericEventData.Fields map leaked stale entries from Spawner A to Spawner B across loop iterations

Files changed:

  • CLAUDE.md / AGENTS.md — added 7 conventions (5 propagated + 2 new)
  • self-development/agentconfig.yaml — added same 7 conventions to shared agent config
  • self-development/kelos-workers.yaml — added 2 new conventions (HTTP client timeout, loop state reset)
  • self-development/kelos-reviewer.yaml — added HTTP client timeout and loop state reset to reviewer checklist

Which issue(s) this PR is related to:

N/A

Special notes for your reviewer:

The propagation is the most impactful change — it closes the gap between what the reviewer agent checks for and what the other agents (dev, PR responder) know to avoid. The two new conventions are net-new patterns identified from PR #866 and #902 reviews this week.

Does this PR introduce a user-facing change?

NONE

Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 4 files

@kelos-bot kelos-bot bot changed the title Add pre-push verification and cross-surface update conventions Add deploy-dev sync, controller migration, and release note conventions Mar 28, 2026
kelos-bot bot pushed a commit that referenced this pull request Mar 29, 2026
Add three new agent conventions from recent PR review feedback:

1. Per-TaskSpawner configuration should be CRD fields, not controller
   flags (PR #838 - gjkim42 review)
2. CRD API backward compatibility - never rename JSON field tags
   (PR #838 - P1 review finding)
3. Gate optional CRDs behind Helm values flags (PR #821 - PodMonitoring
   broke installs on clusters without monitoring.googleapis.com)

Also includes previously proposed conventions from PR #786:
- Consistent guidance across surfaces
- Provider-agnostic API design
- Idiomatic Helm values
- Deploy-dev workflow sync
- Controller-driven migration
- Release note user action requirements

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@kelos-bot kelos-bot bot force-pushed the kelos-config-update-latest branch from bcdeef3 to 7ade17e Compare March 29, 2026 18:06
@kelos-bot kelos-bot bot changed the title Add deploy-dev sync, controller migration, and release note conventions Add CRD design, API compatibility, and Helm gating conventions Mar 29, 2026
@gjkim42
Copy link
Copy Markdown
Collaborator

gjkim42 commented Mar 30, 2026

/kelos pick-up
rebase on origin/main

@kelos-bot
Copy link
Copy Markdown
Author

kelos-bot bot commented Mar 30, 2026

🤖 Kelos Task Status

Task kelos-pr-responder-786 has succeeded. ✅

@kelos-bot kelos-bot bot added kind/cleanup and removed needs-kind Indicates an issue or PR lacks a kind/* label labels Mar 30, 2026
@kelos-bot
Copy link
Copy Markdown
Author

kelos-bot bot commented Mar 30, 2026

🤖 Kelos Agent @gjkim42

/kelos needs-input

Rebased on origin/main (was already up to date). Added kind/cleanup label to fix check-pr-labels CI check. Updated PR body formatting.

The only failing CI check is comment-label — this is a repo-level permissions issue (kelos-bot[bot] lacks write access), not related to this PR. All core checks (build, test, verify, e2e, integration) passed on the current commit.

Ready for re-review.

@kelos-bot kelos-bot bot force-pushed the kelos-config-update-latest branch from 7ade17e to 782ce1c Compare March 30, 2026 18:13
@kelos-bot kelos-bot bot changed the title Add CRD design, API compatibility, and Helm gating conventions Add Helm CRD escaping, Docker pinning, and Go safety conventions Mar 30, 2026
@kelos-bot kelos-bot bot changed the title Add Helm CRD escaping, Docker pinning, and Go safety conventions Add test synchronization, RBAC, and Go safety conventions Apr 1, 2026
@kelos-bot kelos-bot bot changed the title Add test synchronization, RBAC, and Go safety conventions Sync worker agent conventions and broaden K8s comparison rule Apr 2, 2026
Add four new conventions backed by review evidence from recent PRs:

1. Go template variable completeness: initialize all template variables
   unconditionally, not just inside conditional branches (PR #866)
2. Nil-safe chained accessor calls: check intermediate pointers for nil
   when using go-github event types (PR #851)
3. Consistent string comparison strategy: do not mix EqualFold and ==
   for the same field across code paths (PRs #866, #880)
4. Helm nil-safe nested value access: use dig or hasKey/default for
   nested values that may not exist (PR #866)

Also sync kelos-workers-agent conventions with kelos-dev-agent (missing
11 conventions including K8s comparison, CRD backward compat, Docker
image pinning, Go safety rules, and RBAC), and expand the reviewer
agent checklist with Helm/CRD, Security, and Go convention sections.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@kelos-bot kelos-bot bot force-pushed the kelos-config-update-latest branch from 0871329 to 6379545 Compare April 3, 2026 18:15
@kelos-bot kelos-bot bot changed the title Sync worker agent conventions and broaden K8s comparison rule Add new agent conventions from PR review feedback and sync worker agent Apr 3, 2026
…oop state reset rules

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@kelos-bot kelos-bot bot changed the title Add new agent conventions from PR review feedback and sync worker agent Propagate conventions to all agents and add new rules from PR reviews Apr 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant