# Initial Codebase Assessment — coulomb-loop **Date:** 2026-06-18 **Assessor:** kaizen-agentic supplier session (automated + repo scan) **Domain:** coulomb_social **State Hub:** registered (`coulomb-loop`, topic `coulomb-social`) --- ## Executive summary `coulomb-loop` is a **greenfield customer engagement repository** created to operate Coulomb's fleet self-improvement loops with `kaizen-agentic` as supplier. At assessment time the repo contains **intent and planning artefacts only** — no runtime code, no `.kaizen/` state, no synced ActivityDefinitions, and no active loop executions. That is correct for the engagement model: this repo is a **contract and operations layer**, not an application. Registration with state-hub completed on 2026-06-18. Four workplans (LOOP-WP-0001–0004) are indexed with 30 hub tasks. Automation path is clear; blockers are cross-repo (activity-core resolver, pilot opt-in on target repos). --- ## Repository inventory | Path | Present | Notes | |------|---------|-------| | `INTENT.md` | yes | Customer/supplier model, four loops, cadence ramp | | `SCOPE.md` | stub → filled | Was register script stub; now aligned to INTENT | | `README.md` | yes | One-liner only; sufficient for now | | `workplans/LOOP-WP-0001..0004` | yes | Synced to state-hub (4 workstreams) | | `registry/` | yes | reuse-surface scaffold; 0 capabilities | | `activity-definitions/` | no | Planned in LOOP-WP-0001 T04 | | `loops/` | no | Planned in LOOP-WP-0004 T02 | | `docs/adr/` | no | Created in this session | | `history/` | this file | | | `.claude/rules/` | yes | Generated by `register_project.sh`; needs content | | `CLAUDE.md` | yes | Generated; imports rules | | `.kaizen/` | no | Not expected in customer repo (lives in target repos) | **Language / stack:** Markdown-first coordination repo. No package manifest. Verification: `git diff --check`, state-hub `make fix-consistency REPO=coulomb-loop`. --- ## Ecosystem context (assessed 2026-06-18) ### State Hub fleet - **57 repos** registered (including `coulomb-loop`) - **12 domains**; `coulomb-loop` under `coulomb_social` alongside `vergabe-teilnahme` - **49+ repos** document state-hub session protocol in agent instructions ### Reuse-surface - **53 repos** with `registry/` federation participation - `coulomb-loop` has empty registry scaffold (expected for engagement repo) ### kaizen-agentic (supplier) - **20 agents** across 7 categories - ADR-005 schedule contract shipped (`schedule init|validate|list|prepare`) - **5 ActivityDefinition drafts** in supplier repo (`enabled: false`) - `discover_kaizen_scheduled_repos` resolver **not yet** in activity-core ### activity-core (scheduler) - Active jobs: `weekly-sbom-staleness`, `weekly-coding-retro` - the-custodian: `daily-statehub-wsjf-triage` (enabled) - No kaizen loop definitions synced yet ### Target-repo readiness (pilot) | Repo | `.kaizen/schedule.yml` | `.kaizen/metrics/` | Registry | |------|------------------------|-------------------|----------| | `kaizen-agentic` | absent | absent | yes | | `the-custodian` | absent | absent | yes | | `activity-core` | absent | absent | yes | **Gap:** pilot repos need `schedule init` + `memory init` (LOOP-WP-0001 T03). --- ## Workplan status at assessment | ID | Title | Hub tasks | Blocker | |----|-------|-----------|---------| | LOOP-WP-0001 | Kaizen improvement stack | 8 open | activity-core resolver | | LOOP-WP-0002 | Reactive quality escalation | 7 open | LOOP-WP-0001 metrics scaffold | | LOOP-WP-0003 | Registry hygiene | 7 open | shell resolver for reuse-surface | | LOOP-WP-0004 | Loop regulator | 8 open | LOOP-WP-0001–0003 health data | Supplier track: `KAIZEN-WP-0008` (kaizen-agentic) created in same session. --- ## Automation posture **Ready for automation today:** - state-hub registration and workplan sync (`fix-consistency`) - workplan-driven task tracking (30 hub tasks) - `kaizen-agentic schedule prepare` on target repos (once schedule exists) - reuse-surface `validate` / `report gaps` (CLI, manual or shell resolver) **Requires cross-repo automation (not in coulomb-loop):** | Capability | Owner | Status | |------------|-------|--------| | `discover_kaizen_scheduled_repos` | activity-core | spec only | | `discover_kaizen_projects` shell resolver | activity-core | referenced, unverified | | `kaizen.metrics.recorded` NATS event | kaizen-agentic + activity-core | spec only | | `reuse_surface_report_gaps` resolver | activity-core | proposed in LOOP-WP-0003 | | Hourly cron definitions | activity-core | drafts in coulomb-loop pending | **Automation principle adopted:** coulomb-loop commits **definition copies** and **roster declarations**; activity-core owns trigger firing. No Temporal code in customer repo (ADR-002). --- ## Risks 1. **Hourly cadence noise** — mitigated by LOOP-WP-0004 regulator and phased ramp. 2. **Workplan prefix mismatch** — register script derived `COULOMB-WP`; engagement uses `LOOP-WP` (ADR-001 documents choice). 3. **topic_id was null at register** — patched to `coulomb-social` topic post-register. 4. **Pilot scope creep** — decision needed on fleet vs custodian-only pilot (DEC-001). --- ## Recommended next actions (automated where possible) 1. ~~Register in state-hub~~ (done) 2. Fill `loops/kaizen-stack/roster.yaml` (LOOP-WP-0001 T02) 3. `kaizen-agentic schedule init` on pilot repos (LOOP-WP-0001 T03) 4. Copy ActivityDefinitions to `activity-definitions/` (LOOP-WP-0001 T04) 5. Open activity-core handoff PR checklist (LOOP-WP-0001 T05) 6. Resolve open decisions in `docs/decisions/` before fleet expansion --- ## Related - `INTENT.md` - `docs/adr/ADR-001-workplan-prefix.md` - `docs/adr/ADR-002-customer-supplier-boundary.md` - `docs/adr/ADR-003-cadence-ramp-policy.md` - `docs/decisions/` — pending operator decisions - Supplier: `kaizen-agentic/workplans/kaizen-agentic-WP-0008-coulomb-loop-supplier-engagement.md`