Skip to content

Latest commit

 

History

History
208 lines (109 loc) · 5.97 KB

File metadata and controls

208 lines (109 loc) · 5.97 KB

Bookmarks

Progressive disclosure for task-specific documentation and references.

Table of Contents


Architecture Decisions

Why the platform uses CRDs, operators, and Job-based execution instead of a traditional API.

Why user tokens are used for API operations instead of service accounts.

Design for operating on multiple repositories in a single session.

Language choices for each component and why.

Frontend technology stack decisions.

Runner SDK design and architecture.


Development Context

Go backend patterns, K8s integration, handler conventions, user-scoped client usage.

NextJS patterns, Shadcn UI usage, React Query data fetching, component guidelines.

Auth flows, RBAC enforcement, token handling, container security patterns.


Code Patterns

Consistent error patterns across backend, operator, and runner.

When to use user token vs. service account clients. Critical for RBAC compliance.

Data fetching hooks, mutations, cache invalidation, optimistic updates.


Component Guides

Go API development, testing, handler structure.

Testing strategies, test utilities, integration test setup.

NextJS development, local setup, environment config.

Component patterns, Shadcn usage, type conventions, pre-commit checklist.

Architecture patterns for React components.

Operator development, watch patterns, reconciliation loop.

Python runner development, Claude Code SDK integration.

Stateless gateway design, token forwarding, input validation.


Development Environment

Recommended local dev setup using Kind (Kubernetes in Docker).

OpenShift Local (CRC) setup for OpenShift-specific features.

Run components locally with breakpoint debugging.

Kustomize overlay structure, deploy.sh usage.


Testing

Writing and running Cypress E2E tests.

Running E2E tests, environment setup, CI integration.


Observability

Monitoring, metrics, and tracing architecture.

LLM tracing with privacy-preserving defaults.

Grafana dashboards for operator metrics.


Design Documents

Session lifecycle management through declarative status transitions.

Interface contract between operator and runner pods.

Status field evolution and phase transitions.

How sessions are initialized and configured.

Keeping spec and runtime state in sync.


Dependency Automation

Daily automated check for claude-agent-sdk and anthropic SDK updates. Bumps pyproject.toml, regenerates uv.lock, and creates a PR with a feature analysis report.

Orchestrates PyPI version checking, pyproject.toml updates, GitHub changelog fetching, and report generation.

Parses GitHub release notes into structured feature data. Detects runner relevance (Claude/Gemini), status (New/GA/Beta/Deprecated), opt-in requirements, and behavior changes.


Amber Automation

Automation policies and label mappings.