Files
cluster-autoscaler-with-capi/docs/sessions/2026-09-26-2355-history-conventions.md
T
kacerrandClaude Opus 5.5 5fd998c5f9 Initial import: phase docs, configs, Claude conventions
Phase 1-3 runbooks and design notes, version pins, config templates,
project-history conventions, cluster-inspector read-only credentials setup.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 00:58:52 +02:00

52 lines
2.3 KiB
Markdown

# Session: which conventions to adopt from egress-proxies-operator
**Created:** 2026-09-26 23:55
## Question
> look into project in /Users/jan.novak/srv/go/egress-proxies-operator and suggest which rules i
> should copy over into this project
>
> this project is sort of research/experimentation project, so i want to keep history of
> conversations, decisions, plans, etc.
## What was checked
`egress-proxies-operator`: `CLAUDE.md`, `.claude/settings.json` + `settings.local.json`,
`.claude/commands/{ship,release}.md`, `.claude/agents/*`, `AGENTS.md`, and samples from
`docs/plans/`, `docs/plans-executions/`, `docs/prompts/`, `docs/reviews/`, `CHANGELOG.md`.
## Findings
Adopted, adapted to a docs/lab repo:
- Plans in `docs/plans/` with the "commit the plan first, on its own" ordering rule.
- Execution logs in `docs/plans-executions/`, especially "exact commands with one line of
context, deviations called out", which suits lab runbook work better than Go code.
- `docs/prompts/`, `docs/reviews/`, top-inserted `CHANGELOG.md` with real `date` timestamps.
- Gitea + `tea pr create` MR flow, but only for phase-3 Go code; docs go straight to `main`.
- `/ship` command; a small read-only permission allowlist (`kubectl get/describe/logs`,
`clusterctl describe`, `helm list`, git read commands).
Not adopted: Go and testing conventions, CI/CD, kubebuilder gotchas, `AGENTS.md`, the two
operator reviewer agents (candidates for phase 3), `/release` (no tags or images here),
`.junie/.codex/.agents` duplicates, and the broad `kubectl *` / `curl *` permissions.
New, not in the operator repo, because decisions there are buried in plan context sections:
- `docs/decisions.md`: one table with alternatives and status, back-filled with 9 rows.
- `docs/sessions/`: summaries of conversations that did not produce a plan (this file is the first).
## Open questions
- ~~Whether `kubectl get *` in the allowlist is too broad: `kubectl get secret -o yaml` would
print the `lab1-kubeconfig` secret without a prompt.~~ Resolved by
[decision #11](../decisions.md): a parallel session introduced read-only `cluster-inspector`
kubeconfigs, so the `kubectl` / `clusterctl` / `helm` allowlist entries were dropped from
`.claude/settings.json` again.
## Follow-ups
- [Decision #10](../decisions.md)
- `CLAUDE.md` sections "Project history" and "Git"