coulomb-loop/docs/adr/ADR-002-customer-supplier-boundary.md

62 lines
1.8 KiB
Markdown
Raw Normal View History

---
id: ADR-002
title: CustomerSupplier Engagement Boundary
status: accepted
date: "2026-06-18"
---
# ADR-002 — CustomerSupplier Engagement Boundary
## Status
Accepted
## Context
Coulomb hired kaizen-agentic as a **supplier** of agents and improvement
expertise. Agents must improve Coulomb's fleet without becoming part of Coulomb's
application codebases or the supplier's product repo.
## Decision
### coulomb-loop (customer) owns
- Engagement INTENT, SCOPE, workplans, decisions
- Loop rosters (`loops/*/roster.yaml`)
- ActivityDefinition **copies** tuned for Coulomb cadence
- Loop health records and cadence state (`loops/*/cadence.yml`, `health.jsonl`)
- state-hub progress events for the engagement
### kaizen-agentic (supplier) owns
- Agent markdown definitions (`agents/agent-*.md`)
- CLI (`schedule`, `metrics`, `memory`, `validate`)
- ADRs for memory, metrics, scheduled execution (ADR-002005)
- ActivityDefinition **reference** templates
- Customer-repo bootstrap playbook (KAIZEN-WP-0008)
### Target repos (fleet) hold runtime state
- `.kaizen/schedule.yml` — opt-in per repo
- `.kaizen/agents/<name>/memory.md` — project-scoped agent memory
- `.kaizen/metrics/<name>/` — execution metrics
### Shared operators (not owned by either repo)
| System | Role |
|--------|------|
| activity-core | Cron/event → task creation |
| state-hub | Fleet roster, workstream index |
| reuse-surface | Capability registry CLI and federation |
## Consequences
- No agent definitions are copied into `coulomb-loop`
- No scheduling runtime code in `coulomb-loop`
- Supplier improvements flow back via KAIZEN-WP-0008, not by merging into coulomb-loop
- Customer may fork ActivityDefinitions without waiting for supplier release
## Related
- `INTENT.md`
- `docs/adr/ADR-003-cadence-ramp-policy.md`