Compare commits
10 commits
f0dd557662
...
3fda7e54d1
| Author | SHA1 | Date | |
|---|---|---|---|
| 3fda7e54d1 | |||
| f3d1d98e42 | |||
| 2f94943d97 | |||
| 35052500b1 | |||
| 3225cf9dd6 | |||
| 245b7fcbfe | |||
| 27e05552a2 | |||
| 78b82dd17b | |||
| 3eb553f508 | |||
| 7f9cc62cc6 |
44 changed files with 709 additions and 316 deletions
|
|
@ -1,25 +1,8 @@
|
|||
## Architecture
|
||||
|
||||
`coulomb-loop` is a **markdown-first engagement layer** — no application runtime.
|
||||
<!-- TODO: Describe the key design decisions and component structure.
|
||||
Key modules, data flows, external integrations, state machines, etc. -->
|
||||
|
||||
```
|
||||
activity-core (cron/event)
|
||||
→ state-hub roster + coulomb-loop rosters
|
||||
→ tasks on target repos
|
||||
→ kaizen-agentic schedule prepare / metrics CLI
|
||||
→ coding-agent sessions (supplier agents)
|
||||
```
|
||||
## Quick Reference
|
||||
|
||||
### Layers
|
||||
|
||||
| Layer | Repo | Role |
|
||||
|-------|------|------|
|
||||
| Customer contracts | coulomb-loop | Workplans, ADRs, ActivityDefinition copies, `loops/` |
|
||||
| Supplier IP | kaizen-agentic | Agents, CLI, ADR-002–006 |
|
||||
| Scheduler | activity-core | Temporal schedules, resolvers |
|
||||
| Roster | state-hub | Repo list, workstreams, events |
|
||||
| Execution state | target repos | `.kaizen/schedule.yml`, memory, metrics |
|
||||
|
||||
### Four loops
|
||||
|
||||
See `INTENT.md` and LOOP-WP-0001–0004. LOOP-WP-0004 regulates cadence (ADR-003).
|
||||
`~/state-hub/mcp_server/TOOLS.md` — MCP tool reference
|
||||
|
|
|
|||
50
.claude/rules/credential-routing.md
Normal file
50
.claude/rules/credential-routing.md
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
# Credential and access routing
|
||||
|
||||
**Audience:** Codex, Claude Code, Grok, and custodian agents that call **llm-connect**
|
||||
for inference. Run this check **before** requesting secrets, API keys, SSH access,
|
||||
login tokens, or database passwords — in any repo, not only `ops-warden`.
|
||||
|
||||
ops-warden **issues SSH certificates only** (`warden sign`, `cert_command`). Every
|
||||
other credential need belongs to another subsystem. **Do not** message
|
||||
`ops-warden` on State Hub expecting a secret value; the reply is a pointer, not a key.
|
||||
|
||||
### Lookup (do this first)
|
||||
|
||||
```bash
|
||||
warden route find "<describe your need>" --json
|
||||
warden route show <catalog-id> --json
|
||||
```
|
||||
|
||||
Requires the `warden` CLI from `~/ops-warden` (`uv tool install .` or `uv run warden`).
|
||||
|
||||
| Agent runtime | How to orient |
|
||||
| --- | --- |
|
||||
| **Codex / Grok** (shell, HTTP State Hub) | `warden route` commands above; inbox `to_agent=coulomb-loop` is for coordination, not secret vending |
|
||||
| **Claude Code** (MCP when available) | `get_domain_summary("custodian")` for workstreams; **still** use `warden route` for credential ownership |
|
||||
| **llm-connect** (inference service) | Never put secret retrieval in prompts; route custody to OpenBao/operator paths surfaced by `warden route` |
|
||||
|
||||
### Quick routing table
|
||||
|
||||
| I need… | Owner | ops-warden executes? |
|
||||
| --- | --- | --- |
|
||||
| SSH cert (`adm`/`agt`/`atm`) | ops-warden | **Yes** — `warden sign` |
|
||||
| API key, DB password, provider token | OpenBao (`railiance-platform`) | No — route only |
|
||||
| Login / OIDC / MFA | key-cape / Keycloak | No — route only |
|
||||
| Authorization decision | flex-auth | No — route only |
|
||||
| activity-core → issue-core emission | activity-core + issue-core | No — `warden route show activity-core-issue-sink` |
|
||||
| SSH tunnel | ops-bridge (+ `cert_command` from warden) | No — route only |
|
||||
|
||||
### Anti-patterns (do not do these)
|
||||
|
||||
- `POST /messages/` to `ops-warden` asking for `ISSUE_CORE_API_KEY`, `OPENROUTER_API_KEY`, etc.
|
||||
- Inventing `warden secret`, `warden login`, `warden bao`, `warden tunnel` — they do not exist
|
||||
- Pasting secrets into Git, State Hub, workplans, logs, or chat
|
||||
|
||||
### Other capabilities (reuse-surface)
|
||||
|
||||
Non-credential capabilities are usually discovered through **reuse-surface** federation
|
||||
(`reuse-surface` registry / `capability.*` indexes). Credential routing is inlined in
|
||||
every repo's agent instructions because it is high-frequency, high-risk, and easy to
|
||||
get wrong.
|
||||
|
||||
**Canon:** `~/ops-warden/wiki/CredentialRouting.md` · catalog `~/ops-warden/registry/routing/catalog.yaml`
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
## First Session Protocol
|
||||
|
||||
Triggered when `get_domain_summary("coulomb_social")` shows **no workstreams**.
|
||||
Triggered when `get_domain_summary("communication")` shows **no workstreams**.
|
||||
The project is registered but work has not yet been structured.
|
||||
|
||||
**Step 1 — Read, don't write**
|
||||
- `~/the-custodian/canon/projects/coulomb_social/project_charter_v0.1.md` — purpose, scope
|
||||
- `~/the-custodian/canon/projects/coulomb_social/roadmap_v0.1.md` — planned phases
|
||||
- `~/the-custodian/canon/projects/communication/project_charter_v0.1.md` — purpose, scope
|
||||
- `~/the-custodian/canon/projects/communication/roadmap_v0.1.md` — planned phases
|
||||
- Scan repo root: README, directory structure, existing code or docs
|
||||
|
||||
**Step 2 — Survey in-progress work**
|
||||
|
|
@ -17,7 +17,7 @@ roadmap phase. **Wait for approval before creating.**
|
|||
|
||||
**Step 4 — Create workplan file first, then DB record (ADR-001)**
|
||||
```
|
||||
workplans/COULOMB-WP-NNNN-<slug>.md ← write this first
|
||||
workplans/LOOP-WP-NNNN-<slug>.md ← write this first
|
||||
```
|
||||
Then register in the hub:
|
||||
```
|
||||
|
|
@ -28,7 +28,7 @@ create_task(workstream_id="<id>", title="...", priority="high|medium|low")
|
|||
**Step 5 — Record the setup**
|
||||
```
|
||||
add_progress_event(
|
||||
summary="First session: structured coulomb_social into N workstreams, M tasks",
|
||||
summary="First session: structured communication into N workstreams, M tasks",
|
||||
event_type="milestone",
|
||||
topic_id="36c7421b-c537-4723-bf75-42a3ebc6a1dc",
|
||||
detail={"workstreams": [...], "tasks_created": M}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,8 @@
|
|||
## Repo boundary
|
||||
|
||||
This repo owns **coulomb-loop engagement operations** only. It does not own:
|
||||
This repo owns **coulomb-loop** only. It does not own:
|
||||
|
||||
- Kaizen agent definitions → `kaizen-agentic`
|
||||
- activity-core resolvers and Temporal workers → `activity-core`
|
||||
- State-hub API/MCP → `state-hub` / `the-custodian`
|
||||
- reuse-surface CLI and federation hub → `reuse-surface`
|
||||
- Target repo `.kaizen/` state → each fleet repo checkout
|
||||
|
||||
Cross-repo handoffs are documented in loop workplans and `docs/adr/ADR-002-customer-supplier-boundary.md`.
|
||||
<!-- TODO: List what belongs in adjacent repos, e.g.:
|
||||
- SSH key management → railiance-infra/
|
||||
- State hub code → state-hub/
|
||||
-->
|
||||
|
|
|
|||
|
|
@ -1,15 +1,5 @@
|
|||
## Repo Identity
|
||||
**Purpose:** Coulomb fleet self-improvement loop engagement — customer repo for scheduled kaizen-agentic supplier operations.
|
||||
|
||||
**Purpose:** coulomb-loop — Coulomb customer engagement repo for fleet self-improvement loops operated with kaizen-agentic as supplier.
|
||||
|
||||
**Domain:** coulomb_social
|
||||
**Domain:** communication
|
||||
**Repo slug:** coulomb-loop
|
||||
**Topic ID:** 36c7421b-c537-4723-bf75-42a3ebc6a1dc
|
||||
|
||||
**Supplier:** `kaizen-agentic` (agents, CLI, playbook — not merged into this repo)
|
||||
|
||||
**Custodian integration:** Registered in state-hub. Workplans use `LOOP-WP` prefix (ADR-001). Sync after workplan edits:
|
||||
|
||||
```bash
|
||||
cd ~/state-hub && make fix-consistency REPO=coulomb-loop
|
||||
```
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
## Session Protocol
|
||||
|
||||
State Hub: http://127.0.0.1:8000
|
||||
Dev Hub (State Hub API): http://127.0.0.1:8000
|
||||
MCP server name in `~/.claude.json`: `dev-hub`
|
||||
|
||||
**Step 1 — Orient**
|
||||
|
||||
|
|
@ -10,7 +11,7 @@ cat .custodian-brief.md
|
|||
```
|
||||
Then call the MCP tool for richer cross-domain context when MCP tools are exposed:
|
||||
```
|
||||
get_domain_summary("coulomb_social")
|
||||
get_domain_summary("communication")
|
||||
```
|
||||
If MCP tools are unavailable in the current agent session, use the REST API:
|
||||
```bash
|
||||
|
|
@ -43,7 +44,7 @@ For each file with `status: ready`, `active`, or `blocked`, note pending
|
|||
|
||||
**Step 4 — Present brief**
|
||||
|
||||
1. **Active workstreams** for `coulomb_social` — title, task counts, blocking decisions
|
||||
1. **Active workstreams** for `communication` — title, task counts, blocking decisions
|
||||
2. **Pending tasks** from `workplans/` + any `[repo:coulomb-loop]` hub tasks
|
||||
3. **Goal guidance** — if `goal_guidance` in summary:
|
||||
- `needs_workplan`: surface as top action — *"Repo goal '{title}' has no workplan yet"*
|
||||
|
|
|
|||
|
|
@ -1,28 +1,19 @@
|
|||
## Stack and Commands
|
||||
## Stack
|
||||
|
||||
**Language:** Markdown / YAML coordination artefacts
|
||||
**Package manager:** none
|
||||
**Test runner:** none
|
||||
<!-- TODO: Fill in language, frameworks, and key dependencies -->
|
||||
- **Language:**
|
||||
- **Key deps:**
|
||||
|
||||
### Essential commands
|
||||
## Dev Commands
|
||||
|
||||
```bash
|
||||
# Sync workplans to state-hub after edits
|
||||
cd ~/state-hub && make fix-consistency REPO=coulomb-loop
|
||||
# TODO: Fill in the standard commands for this repo
|
||||
|
||||
# Validate reuse-surface registry (when entries exist)
|
||||
reuse-surface validate
|
||||
# Install dependencies
|
||||
|
||||
# Supplier CLI on target repos (not this repo)
|
||||
kaizen-agentic schedule validate --target /path/to/target-repo
|
||||
kaizen-agentic schedule prepare coach --target /path/to/target-repo
|
||||
# Run tests
|
||||
|
||||
# Lint / type check
|
||||
|
||||
# Build / package (if applicable)
|
||||
```
|
||||
|
||||
### Session orientation
|
||||
|
||||
```bash
|
||||
# MCP when available
|
||||
get_domain_summary("coulomb_social")
|
||||
```
|
||||
|
||||
Fallback: `.custodian-brief.md`
|
||||
|
|
@ -1,17 +1,40 @@
|
|||
## Workplan Convention (ADR-001)
|
||||
|
||||
File location: `workplans/LOOP-WP-NNNN-<slug>.md`
|
||||
ID prefix: `LOOP-WP` (see `docs/adr/ADR-001-workplan-prefix.md`)
|
||||
ID prefix: `LOOP-WP-`
|
||||
|
||||
Work items originate as files in this repo **before** being registered in the hub.
|
||||
|
||||
Ecosystem todos from supplier or other agents arrive as `[repo:coulomb-loop]` hub tasks.
|
||||
Canonical workplan/workstream frontmatter statuses are:
|
||||
`proposed`, `ready`, `active`, `blocked`, `backlog`, `finished`, `archived`.
|
||||
Use `proposed` for a newly drafted plan, `ready` after review against current
|
||||
repo state, and `finished` when implementation is complete. `stalled` and
|
||||
`needs_review` are derived health labels, not stored statuses.
|
||||
|
||||
After workplan file updates:
|
||||
Closed workplans may be moved to `workplans/archived/` with a completion-date
|
||||
prefix: `YYMMDD-LOOP-WP-NNNN-<slug>.md`. The frontmatter id remains
|
||||
unchanged; the prefix is only for quick visual reference.
|
||||
|
||||
```bash
|
||||
cd ~/state-hub && make fix-consistency REPO=coulomb-loop
|
||||
Small opportunistic tasks discovered during another session use **Ad Hoc Tasks**:
|
||||
`workplans/ADHOC-YYYY-MM-DD.md`, workstream slug `adhoc-YYYY-MM-DD`, and task ids
|
||||
`ADHOC-YYYY-MM-DD-T01`, `T02`, etc. Use adhocs only for low-risk work completed
|
||||
directly. Promote anything requiring analysis, design, approval, dependencies, or
|
||||
multiple planned phases into a normal workplan.
|
||||
|
||||
Ecosystem todos from other agents arrive as `[repo:coulomb-loop]` hub tasks —
|
||||
visible at session start. Pick one up by creating the workplan file, then registering
|
||||
the workstream.
|
||||
|
||||
Task blocks use this shape:
|
||||
|
||||
```task
|
||||
id: LOOP-WP-NNNN-T01
|
||||
status: wait | todo | progress | done | cancel
|
||||
priority: high | medium | low
|
||||
state_hub_task_id: "<uuid>" # written by fix-consistency — do not edit
|
||||
```
|
||||
|
||||
Customer loop workplans: LOOP-WP-0000 (bootstrap), LOOP-WP-0001–0004 (loops).
|
||||
Supplier mirror: `kaizen-agentic` KAIZEN-WP-0008.
|
||||
Status progression is `todo` → `progress` → `done`; use `wait` for waiting or
|
||||
blocked work and `cancel` for stopped work.
|
||||
|
||||
<!-- Ralph Loop rules and HEUREKA sequence: ~/.claude/CLAUDE.md — do not duplicate here -->
|
||||
|
|
|
|||
|
|
@ -1,25 +1,18 @@
|
|||
<!-- custodian-brief: generated by fix-consistency — do not edit manually -->
|
||||
# Custodian Brief — coulomb-loop
|
||||
|
||||
**Domain:** coulomb_social
|
||||
**Last synced:** 2026-06-18 13:16 UTC
|
||||
**Domain:** communication
|
||||
**Last synced:** 2026-06-22 21:20 UTC
|
||||
**State Hub:** http://127.0.0.1:8000 *(adjust if running on a remote machine)*
|
||||
|
||||
## Active Workstreams
|
||||
|
||||
### Operate phase observation and fleet expansion prep
|
||||
Progress: 3/7 done | workstream_id: `620731c9-ed7b-478d-97a2-5e251c2c36ff`
|
||||
|
||||
**Open tasks:**
|
||||
- · Operate-phase draft `07554dce`
|
||||
- · activity-core handoff `92f93ac2`
|
||||
- · Regulator review (gate) `890416df`
|
||||
- · reuse-surface expansion prep `c6667e3e`
|
||||
*(none — repo may need first-session setup)*
|
||||
|
||||
---
|
||||
## MCP Orientation (when available)
|
||||
|
||||
If the state-hub MCP server is reachable, call:
|
||||
`get_domain_summary("coulomb_social")`
|
||||
`get_domain_summary("communication")`
|
||||
This provides richer cross-domain context.
|
||||
If the MCP call fails, use this file as your orientation source.
|
||||
|
|
|
|||
29
.forgejo/workflows/ci-smoke.yaml
Normal file
29
.forgejo/workflows/ci-smoke.yaml
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# Canonical CI smoke template (tier 1 routing drill).
|
||||
# Copy to: .forgejo/workflows/ci-smoke.yaml in consumer repos.
|
||||
name: CI Smoke
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
host-smoke:
|
||||
runs-on: self-hosted
|
||||
steps:
|
||||
- name: Routing probe (host runner)
|
||||
run: |
|
||||
set -eu
|
||||
echo "repository=${GITHUB_REPOSITORY:-unknown}"
|
||||
echo "sha=${GITHUB_SHA:-unknown}"
|
||||
echo "runner=${RUNNER_NAME:-unknown}"
|
||||
uname -a
|
||||
|
||||
container-smoke:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Routing probe (container label)
|
||||
run: |
|
||||
set -eu
|
||||
echo "container-smoke ok for ${GITHUB_REPOSITORY:-unknown}"
|
||||
17
.repo-classification.yaml
Normal file
17
.repo-classification.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
repo_classification:
|
||||
standard: Repo Classification Standard
|
||||
version: '1.0'
|
||||
classified_at: '2026-06-22'
|
||||
classified_by: agent
|
||||
category: experimental
|
||||
domain: communication
|
||||
secondary_domains: []
|
||||
capability_tags:
|
||||
- marketplace
|
||||
- collaboration
|
||||
business_stake:
|
||||
- product
|
||||
- sales
|
||||
business_mechanics:
|
||||
- coordination
|
||||
- operation
|
||||
219
AGENTS.md
Normal file
219
AGENTS.md
Normal file
|
|
@ -0,0 +1,219 @@
|
|||
# coulomb-loop — Agent Instructions
|
||||
|
||||
## Repo Identity
|
||||
|
||||
**Purpose:** Coulomb fleet self-improvement loop engagement — customer repo for scheduled kaizen-agentic supplier operations.
|
||||
|
||||
**Domain:** communication
|
||||
**Repo slug:** coulomb-loop
|
||||
**Topic ID:** `36c7421b-c537-4723-bf75-42a3ebc6a1dc`
|
||||
**Workplan prefix:** `LOOP-WP-`
|
||||
|
||||
---
|
||||
|
||||
## State Hub Integration
|
||||
|
||||
The Custodian State Hub tracks work across all domains. Interact via HTTP REST —
|
||||
there is no MCP server for Codex agents.
|
||||
|
||||
| Context | URL |
|
||||
|---------|-----|
|
||||
| Local workstation | `http://127.0.0.1:8000` |
|
||||
| Remote via tunnel | `http://127.0.0.1:18000` |
|
||||
|
||||
### Orient at session start
|
||||
|
||||
```bash
|
||||
# Offline brief — works without hub connection
|
||||
cat .custodian-brief.md
|
||||
|
||||
# Active workstreams for this domain
|
||||
curl -s "http://127.0.0.1:8000/workstreams/?topic_id=36c7421b-c537-4723-bf75-42a3ebc6a1dc&status=active" \
|
||||
| python3 -m json.tool
|
||||
|
||||
# Check inbox
|
||||
curl -s "http://127.0.0.1:8000/messages/?to_agent=coulomb-loop&unread_only=true" \
|
||||
| python3 -m json.tool
|
||||
```
|
||||
|
||||
Mark a message read:
|
||||
```bash
|
||||
curl -s -X PATCH "http://127.0.0.1:8000/messages/<id>/read" \
|
||||
-H "Content-Type: application/json" -d '{}'
|
||||
```
|
||||
|
||||
### Log progress (required at session close)
|
||||
|
||||
```bash
|
||||
curl -s -X POST http://127.0.0.1:8000/progress/ \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"summary": "what was done",
|
||||
"event_type": "note",
|
||||
"author": "codex",
|
||||
"workstream_id": "<uuid>",
|
||||
"task_id": "<uuid>"
|
||||
}'
|
||||
```
|
||||
|
||||
Omit `workstream_id` / `task_id` when not applicable.
|
||||
|
||||
### Update task status
|
||||
|
||||
```bash
|
||||
curl -s -X PATCH "http://127.0.0.1:8000/tasks/<task_id>" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"status": "progress"}'
|
||||
# values: wait | todo | progress | done | cancel
|
||||
```
|
||||
|
||||
### Flag a task for human review
|
||||
|
||||
```bash
|
||||
curl -s -X PATCH "http://127.0.0.1:8000/tasks/<task_id>" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"needs_human": true, "intervention_note": "reason"}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Session Protocol
|
||||
|
||||
**Start:**
|
||||
1. `cat .custodian-brief.md` — domain goal and open workstreams (offline-safe)
|
||||
2. Check inbox: `GET /messages/?to_agent=coulomb-loop&unread_only=true`; mark read
|
||||
3. Scan workplans: `ls workplans/` — note `status: ready`, `active`, or `blocked` files and open tasks
|
||||
4. Check human-needed tasks: `GET /tasks/?needs_human=true`
|
||||
|
||||
**During work:**
|
||||
- Update task statuses in workplan files as tasks progress
|
||||
- Record significant decisions via `POST /decisions/`
|
||||
|
||||
**Close:**
|
||||
1. Update workplan file task statuses to reflect progress
|
||||
2. Log: `POST /progress/` with a summary of what changed
|
||||
3. Note for the custodian operator: after workplan file changes, run from
|
||||
`~/state-hub`:
|
||||
```bash
|
||||
make fix-consistency REPO=coulomb-loop
|
||||
```
|
||||
This syncs task status from files into the hub DB.
|
||||
|
||||
---
|
||||
|
||||
## Credential and access routing
|
||||
|
||||
**Audience:** Codex, Claude Code, Grok, and custodian agents that call **llm-connect**
|
||||
for inference. Run this check **before** requesting secrets, API keys, SSH access,
|
||||
login tokens, or database passwords — in any repo, not only `ops-warden`.
|
||||
|
||||
ops-warden **issues SSH certificates only** (`warden sign`, `cert_command`). Every
|
||||
other credential need belongs to another subsystem. **Do not** message
|
||||
`ops-warden` on State Hub expecting a secret value; the reply is a pointer, not a key.
|
||||
|
||||
### Lookup (do this first)
|
||||
|
||||
```bash
|
||||
warden route find "<describe your need>" --json
|
||||
warden route show <catalog-id> --json
|
||||
```
|
||||
|
||||
Requires the `warden` CLI from `~/ops-warden` (`uv tool install .` or `uv run warden`).
|
||||
|
||||
| Agent runtime | How to orient |
|
||||
| --- | --- |
|
||||
| **Codex / Grok** (shell, HTTP State Hub) | `warden route` commands above; inbox `to_agent=coulomb-loop` is for coordination, not secret vending |
|
||||
| **Claude Code** (MCP when available) | `get_domain_summary("custodian")` for workstreams; **still** use `warden route` for credential ownership |
|
||||
| **llm-connect** (inference service) | Never put secret retrieval in prompts; route custody to OpenBao/operator paths surfaced by `warden route` |
|
||||
|
||||
### Quick routing table
|
||||
|
||||
| I need… | Owner | ops-warden executes? |
|
||||
| --- | --- | --- |
|
||||
| SSH cert (`adm`/`agt`/`atm`) | ops-warden | **Yes** — `warden sign` |
|
||||
| API key, DB password, provider token | OpenBao (`railiance-platform`) | No — route only |
|
||||
| Login / OIDC / MFA | key-cape / Keycloak | No — route only |
|
||||
| Authorization decision | flex-auth | No — route only |
|
||||
| activity-core → issue-core emission | activity-core + issue-core | No — `warden route show activity-core-issue-sink` |
|
||||
| SSH tunnel | ops-bridge (+ `cert_command` from warden) | No — route only |
|
||||
|
||||
### Anti-patterns (do not do these)
|
||||
|
||||
- `POST /messages/` to `ops-warden` asking for `ISSUE_CORE_API_KEY`, `OPENROUTER_API_KEY`, etc.
|
||||
- Inventing `warden secret`, `warden login`, `warden bao`, `warden tunnel` — they do not exist
|
||||
- Pasting secrets into Git, State Hub, workplans, logs, or chat
|
||||
|
||||
### Other capabilities (reuse-surface)
|
||||
|
||||
Non-credential capabilities are usually discovered through **reuse-surface** federation
|
||||
(`reuse-surface` registry / `capability.*` indexes). Credential routing is inlined in
|
||||
every repo's agent instructions because it is high-frequency, high-risk, and easy to
|
||||
get wrong.
|
||||
|
||||
**Canon:** `~/ops-warden/wiki/CredentialRouting.md` · catalog `~/ops-warden/registry/routing/catalog.yaml`
|
||||
|
||||
<!-- REPO-AGENTS-EXTENSIONS -->
|
||||
<!-- Append repo-specific agent instructions below this marker.
|
||||
The state-hub template sync preserves content after this line. -->
|
||||
|
||||
---
|
||||
|
||||
## Workplan Convention (ADR-001)
|
||||
|
||||
Work items originate as files in this repo — not in the hub. The hub is a
|
||||
read/cache/index layer that rebuilds from files.
|
||||
|
||||
**File location:** `workplans/COULOMB-WP-NNNN-<slug>.md`
|
||||
|
||||
**Archived location:** finished workplans may move to
|
||||
`workplans/archived/YYMMDD-COULOMB-WP-NNNN-<slug>.md`. The `YYMMDD` prefix is
|
||||
the completion/archive date; the frontmatter `id` does not change.
|
||||
|
||||
**Ad Hoc Tasks:** small opportunistic fixes discovered during a session use
|
||||
`workplans/ADHOC-YYYY-MM-DD.md` with task ids `ADHOC-YYYY-MM-DD-T01`, etc. Use
|
||||
this only for low-risk work completed directly; create a normal workplan for
|
||||
anything needing analysis, design, approval, dependencies, or multiple phases.
|
||||
|
||||
**Frontmatter:**
|
||||
|
||||
```yaml
|
||||
---
|
||||
id: COULOMB-WP-NNNN
|
||||
type: workplan
|
||||
title: "..."
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: proposed | ready | active | blocked | backlog | finished | archived
|
||||
owner: codex
|
||||
topic_slug: ...
|
||||
created: "YYYY-MM-DD"
|
||||
updated: "YYYY-MM-DD"
|
||||
state_hub_workstream_id: "<uuid>" # written by fix-consistency — do not edit
|
||||
---
|
||||
```
|
||||
|
||||
Use `proposed` for a new draft, `ready` after review against current repo
|
||||
state, and `finished` after implementation. `stalled` and `needs_review` are
|
||||
derived health labels, not frontmatter statuses.
|
||||
|
||||
**Task block format** (one per `##` section):
|
||||
|
||||
```
|
||||
## Task Title
|
||||
|
||||
` ` `task
|
||||
id: COULOMB-WP-NNNN-T01
|
||||
status: wait | todo | progress | done | cancel
|
||||
priority: high | medium | low
|
||||
state_hub_task_id: "<uuid>" # written by fix-consistency — do not edit
|
||||
` ` `
|
||||
|
||||
Task description text.
|
||||
```
|
||||
|
||||
Status progression: `todo` → `progress` → `done`; use `wait` for waiting/blocked work and `cancel` for stopped work.
|
||||
|
||||
To create a new workplan:
|
||||
1. Write the file following the format above
|
||||
2. Notify the custodian operator to run `make fix-consistency REPO=coulomb-loop`
|
||||
(or send a message to the hub agent via `POST /messages/`)
|
||||
|
|
@ -8,4 +8,5 @@
|
|||
@.claude/rules/stack-and-commands.md
|
||||
@.claude/rules/architecture.md
|
||||
@.claude/rules/repo-boundary.md
|
||||
@.claude/rules/credential-routing.md
|
||||
@.claude/rules/agents.md
|
||||
|
|
|
|||
6
SCOPE.md
6
SCOPE.md
|
|
@ -41,10 +41,10 @@ with project-scoped memory and metrics.
|
|||
|
||||
## Current State
|
||||
|
||||
- Status: active (stabilize — daily cadence)
|
||||
- Status: active (operate — weekly cadence)
|
||||
- Implementation: four loops operational on custodian pilot roster (3 repos)
|
||||
- Stability: observation window 2026-06-18 → 2026-07-02 (LOOP-WP-0005)
|
||||
- Usage: internal engagement; weekly promotion gated on regulator review
|
||||
- Stability: observation window closed 2026-06-19 via DEC-008 operator override (LOOP-WP-0005 done)
|
||||
- Usage: internal engagement; weekly Mon crons live; activity-core synced 2026-06-19
|
||||
|
||||
## How It Fits
|
||||
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ context_sources:
|
|||
# Low Agent Success Rate Review
|
||||
|
||||
Enabled 2026-06-18 after activity-core event-payload resolver (ACTIVITY-WP-0011).
|
||||
Fallback: `daily-metrics-health-sweep.md` at `0 6 * * *`.
|
||||
Fallback: `weekly-metrics-health-sweep.md` at `0 6 * * 1`.
|
||||
|
||||
```rule
|
||||
id: flag-low-success-rate
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
id: coulomb-daily-coach-orientation
|
||||
name: Daily Kaizen Coach Orientation (coulomb-loop stabilize)
|
||||
id: coulomb-weekly-coach-orientation
|
||||
name: Weekly Kaizen Coach Orientation (coulomb-loop operate)
|
||||
enabled: true
|
||||
owner: coulomb-loop
|
||||
governance: coulomb_social
|
||||
status: proposed
|
||||
trigger:
|
||||
type: cron
|
||||
cron_expression: "0 9 * * *"
|
||||
cron_expression: "0 9 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
misfire_policy: skip
|
||||
context_sources:
|
||||
|
|
@ -15,26 +15,26 @@ context_sources:
|
|||
query: discover_kaizen_scheduled_repos
|
||||
params:
|
||||
roster: /home/worsch/coulomb-loop/loops/kaizen-stack/roster.yaml
|
||||
cadence: daily
|
||||
cadence: weekly
|
||||
bind_to: context.scheduled_runs
|
||||
---
|
||||
|
||||
# Daily Kaizen Coach Orientation
|
||||
# Weekly Kaizen Coach Orientation
|
||||
|
||||
Stabilize phase per DEC-005. Cron `0 9 * * *` Europe/Berlin.
|
||||
Operate phase per DEC-008. Cron `0 9 * * 1` Europe/Berlin.
|
||||
|
||||
```rule
|
||||
id: run-daily-coach
|
||||
id: run-weekly-coach
|
||||
for_each: context.scheduled_runs
|
||||
bind_as: r
|
||||
condition: 'context.r.agent == "coach" and context.r.enabled'
|
||||
action:
|
||||
task_template: "Daily coach orientation: {context.r.repo}"
|
||||
task_template: "Weekly coach orientation: {context.r.repo}"
|
||||
description: |
|
||||
{context.r.prepare_command}
|
||||
Load agents/agent-coach.md, execute coach synthesis.
|
||||
Session close: kaizen-agentic metrics record coach --success --time <s> --quality <0-1> --emit-event
|
||||
target_repo: context.r.repo
|
||||
priority: medium
|
||||
labels: ["kaizen", "agent-run", "coach", "coulomb-loop", "stabilize"]
|
||||
labels: ["kaizen", "agent-run", "coach", "coulomb-loop", "operate"]
|
||||
```
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
id: coulomb-daily-loop-health-collector
|
||||
name: Daily Loop Health Collector (coulomb-loop regulator)
|
||||
id: coulomb-weekly-loop-health-collector
|
||||
name: Weekly Loop Health Collector (coulomb-loop regulator)
|
||||
enabled: false
|
||||
owner: coulomb-loop
|
||||
governance: coulomb_social
|
||||
status: proposed
|
||||
trigger:
|
||||
type: cron
|
||||
cron_expression: "0 11 * * *"
|
||||
cron_expression: "0 11 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
misfire_policy: skip
|
||||
context_sources:
|
||||
|
|
@ -26,10 +26,10 @@ context_sources:
|
|||
bind_to: context.pilot_metrics
|
||||
---
|
||||
|
||||
# Daily Loop Health Collector
|
||||
# Weekly Loop Health Collector
|
||||
|
||||
LOOP-WP-0004 — aggregates first-order loop health for regulator sessions.
|
||||
Daily `0 11 * * *` after first-order chains (DEC-007).
|
||||
Weekly `0 11 * * 1` aligned with regulator session (DEC-008).
|
||||
|
||||
```instruction
|
||||
id: append-health-snapshot
|
||||
|
|
@ -38,7 +38,7 @@ description: |
|
|||
loops/<loop-id>/health.jsonl with:
|
||||
- timestamp, phase, tasks_created (from hub), manual_rescues (bootstrap-log),
|
||||
agent_success_rate (pilot metrics avg), false_positive_rate (estimate).
|
||||
Regenerate loops/regulator/dashboard.md from last 24h of health.jsonl files.
|
||||
Regenerate loops/regulator/dashboard.md from last 7d of health.jsonl files.
|
||||
If demotion trigger from state-machine.md fires, create urgent optimization task.
|
||||
```
|
||||
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
id: coulomb-daily-metrics-health-sweep
|
||||
name: Daily Metrics Health Sweep (coulomb-loop backup)
|
||||
id: coulomb-weekly-metrics-health-sweep
|
||||
name: Weekly Metrics Health Sweep (coulomb-loop backup)
|
||||
enabled: false
|
||||
owner: coulomb-loop
|
||||
governance: coulomb_social
|
||||
status: proposed
|
||||
trigger:
|
||||
type: cron
|
||||
cron_expression: "0 6 * * *"
|
||||
cron_expression: "0 6 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
misfire_policy: skip
|
||||
context_sources:
|
||||
|
|
@ -19,13 +19,13 @@ context_sources:
|
|||
bind_to: context.projects
|
||||
---
|
||||
|
||||
# Daily Metrics Health Sweep (backup)
|
||||
# Weekly Metrics Health Sweep (backup)
|
||||
|
||||
Stabilize-phase backup per LOOP-WP-0002 T07. Primary path is event-driven
|
||||
Operate-phase backup per LOOP-WP-0002. Primary path is event-driven
|
||||
`low-success-rate-review`; enable only if the event bus is down.
|
||||
|
||||
```rule
|
||||
id: flag-low-success-daily
|
||||
id: flag-low-success-weekly
|
||||
for_each: context.projects
|
||||
bind_as: p
|
||||
condition: 'context.p.summary.success_rate < 0.8 and context.p.summary.execution_count >= 5'
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
id: coulomb-daily-metrics-optimize
|
||||
name: Daily Kaizen Metrics Optimization (coulomb-loop stabilize)
|
||||
id: coulomb-weekly-metrics-optimize
|
||||
name: Weekly Kaizen Metrics Optimization (coulomb-loop operate)
|
||||
enabled: true
|
||||
owner: coulomb-loop
|
||||
governance: coulomb_social
|
||||
status: proposed
|
||||
trigger:
|
||||
type: cron
|
||||
cron_expression: "0 8 * * *"
|
||||
cron_expression: "0 8 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
misfire_policy: skip
|
||||
context_sources:
|
||||
|
|
@ -19,12 +19,12 @@ context_sources:
|
|||
bind_to: context.projects
|
||||
---
|
||||
|
||||
# Daily Kaizen Metrics Optimization
|
||||
# Weekly Kaizen Metrics Optimization
|
||||
|
||||
Stabilize phase per DEC-005. Pilot roster only (DEC-001 option A). Cron `0 8 * * *`.
|
||||
Operate phase per DEC-008. Pilot roster only (DEC-001 option A). Cron `0 8 * * 1`.
|
||||
|
||||
```rule
|
||||
id: run-daily-optimizer
|
||||
id: run-weekly-optimizer
|
||||
for_each: context.projects
|
||||
bind_as: p
|
||||
condition: 'context.p.has_metrics and context.p.in_pilot_roster'
|
||||
|
|
@ -35,7 +35,7 @@ action:
|
|||
Optional: kaizen-agentic metrics publish (when artifact-store configured)
|
||||
target_repo: context.p.repo
|
||||
priority: medium
|
||||
labels: ["kaizen", "metrics", "optimizer", "coulomb-loop", "stabilize"]
|
||||
labels: ["kaizen", "metrics", "optimizer", "coulomb-loop", "operate"]
|
||||
```
|
||||
|
||||
**Supplier reference:** `kaizen-agentic/docs/integrations/activity-definitions/weekly-metrics-optimize.md`
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
id: coulomb-daily-optimization-review
|
||||
name: Daily Kaizen Optimization Review (coulomb-loop stabilize)
|
||||
id: coulomb-weekly-optimization-review
|
||||
name: Weekly Kaizen Optimization Review (coulomb-loop operate)
|
||||
enabled: true
|
||||
owner: coulomb-loop
|
||||
governance: coulomb_social
|
||||
status: proposed
|
||||
trigger:
|
||||
type: cron
|
||||
cron_expression: "0 10 * * *"
|
||||
cron_expression: "0 10 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
misfire_policy: skip
|
||||
context_sources:
|
||||
|
|
@ -15,21 +15,21 @@ context_sources:
|
|||
query: discover_kaizen_scheduled_repos
|
||||
params:
|
||||
roster: /home/worsch/coulomb-loop/loops/kaizen-stack/roster.yaml
|
||||
cadence: daily
|
||||
cadence: weekly
|
||||
bind_to: context.scheduled_runs
|
||||
---
|
||||
|
||||
# Daily Kaizen Optimization Review
|
||||
# Weekly Kaizen Optimization Review
|
||||
|
||||
Stabilize phase per DEC-005. Cron `0 10 * * *` Europe/Berlin.
|
||||
Operate phase per DEC-008. Cron `0 10 * * 1` Europe/Berlin.
|
||||
|
||||
```rule
|
||||
id: run-daily-optimization
|
||||
id: run-weekly-optimization
|
||||
for_each: context.scheduled_runs
|
||||
bind_as: r
|
||||
condition: 'context.r.agent == "optimization" and context.r.enabled'
|
||||
action:
|
||||
task_template: "Daily optimization review: {context.r.repo}"
|
||||
task_template: "Weekly optimization review: {context.r.repo}"
|
||||
description: |
|
||||
{context.r.prepare_command}
|
||||
kaizen-agentic metrics optimize
|
||||
|
|
@ -38,5 +38,5 @@ action:
|
|||
If saturation signals fire (ADR-004), file regulator rotation recommendation.
|
||||
target_repo: context.r.repo
|
||||
priority: medium
|
||||
labels: ["kaizen", "agent-run", "optimization", "coulomb-loop", "stabilize"]
|
||||
labels: ["kaizen", "agent-run", "optimization", "coulomb-loop", "operate"]
|
||||
```
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
---
|
||||
id: coulomb-daily-registry-hygiene-sweep
|
||||
name: Daily Registry Hygiene Sweep (coulomb-loop stabilize)
|
||||
enabled: false
|
||||
id: coulomb-weekly-registry-hygiene-sweep
|
||||
name: Weekly Registry Hygiene Sweep (coulomb-loop operate)
|
||||
enabled: true
|
||||
owner: coulomb-loop
|
||||
governance: coulomb_social
|
||||
status: proposed
|
||||
status: active
|
||||
trigger:
|
||||
type: cron
|
||||
cron_expression: "0 7 * * *"
|
||||
cron_expression: "0 9 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
misfire_policy: skip
|
||||
context_sources:
|
||||
|
|
@ -20,14 +20,17 @@ context_sources:
|
|||
query: reuse_surface_report_gaps
|
||||
params:
|
||||
roster: /home/worsch/coulomb-loop/loops/registry-hygiene/rollout.yaml
|
||||
batch_size: 3
|
||||
batch_size: 2
|
||||
round_robin_state: /home/worsch/coulomb-loop/loops/registry-hygiene/round-robin-state.json
|
||||
reuse_surface_bin: /home/worsch/reuse-surface/.venv/bin/reuse-surface
|
||||
runner_host: bnt-lap001
|
||||
bind_to: context.gaps
|
||||
---
|
||||
|
||||
# Daily Registry Hygiene Sweep
|
||||
# Weekly Registry Hygiene Sweep
|
||||
|
||||
LOOP-WP-0003 — daily batch from `rollout.yaml` (custodian pilot + helix_forge).
|
||||
Promoted 2026-06-18 per DEC-006.
|
||||
LOOP-WP-0003 — weekly batch from `rollout.yaml` (custodian pilot + helix_forge).
|
||||
Promoted 2026-06-19 per DEC-008.
|
||||
|
||||
```rule
|
||||
id: hygiene-task-per-signal
|
||||
|
|
@ -45,4 +48,4 @@ action:
|
|||
labels: ["fleet-hygiene", "coulomb-loop", "scope-analyst"]
|
||||
```
|
||||
|
||||
`enabled: false` until `reuse_surface_report_gaps` shell resolver exists in activity-core.
|
||||
Runtime params per activity-core R2 note `36ac3eeb` (reuse_surface_bin + runner_host).
|
||||
66
docs/decisions/DEC-008-operate-phase-promotion.md
Normal file
66
docs/decisions/DEC-008-operate-phase-promotion.md
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
# DEC-008 — Operate Phase Promotion (Operator Override)
|
||||
|
||||
**Status:** accepted
|
||||
**Date:** 2026-06-19
|
||||
**Owner:** Bernd (Coulomb operator)
|
||||
**Workplan:** LOOP-WP-0005 T07
|
||||
|
||||
---
|
||||
|
||||
## Decision
|
||||
|
||||
Promote all four Coulomb loops from **stabilize (daily)** to **operate (weekly)**,
|
||||
invoking ADR-003 **operator override** to close the observation window early
|
||||
(planned `review_at: 2026-07-02`; actual review `2026-06-19`, day 2/14).
|
||||
|
||||
## Operator override rationale
|
||||
|
||||
- Bootstrap sprint (LOOP-WP-0000–0004) closed with 3/3 E2E cycles on pilot roster
|
||||
- Daily definitions live since 2026-06-18; event path and R2 shell resolver proven
|
||||
- All recorded health snapshots: `manual_rescues == 0`, `false_positive_rate < 0.2`
|
||||
- `min_daily_cycles: 14` not met (2 days observed) — override to complete
|
||||
operate-phase setup and reduce task noise per ADR-003 intent
|
||||
- Regulator recommends **promote** on available evidence; operator accepts
|
||||
|
||||
## Per-loop promotion
|
||||
|
||||
| Loop | From | To | Mechanism |
|
||||
|------|------|-----|-----------|
|
||||
| kaizen-improvement-stack | stabilize daily | operate weekly Mon 08–10 | metrics → coach → optimization chain |
|
||||
| quality-escalation | stabilize daily | operate weekly | event `low-success-rate-review` primary; Mon 06:00 backup sweep (disabled) |
|
||||
| registry-hygiene | stabilize daily 07:00 | operate weekly Mon 09:00 | batch 2, weekly domain rotation |
|
||||
| loop-regulator | stabilize daily 11:00 | operate weekly Mon 11:00 | collector aligns with regulator session |
|
||||
|
||||
## New cadence (Europe/Berlin)
|
||||
|
||||
| Definition | Cron | Enabled |
|
||||
|------------|------|---------|
|
||||
| `coulomb-weekly-metrics-optimize` | `0 8 * * 1` | yes |
|
||||
| `coulomb-weekly-coach-orientation` | `0 9 * * 1` | yes |
|
||||
| `coulomb-weekly-optimization-review` | `0 10 * * 1` | yes |
|
||||
| `coulomb-low-success-rate-review` | event | yes |
|
||||
| `coulomb-weekly-metrics-health-sweep` | `0 6 * * 1` | no (backup) |
|
||||
| `coulomb-weekly-registry-hygiene-sweep` | `0 9 * * 1` | yes |
|
||||
| `coulomb-weekly-loop-health-collector` | `0 11 * * 1` | no (executor pending) |
|
||||
|
||||
Retired `coulomb-daily-*` ids disabled on next activity-core sync.
|
||||
|
||||
## Evidence
|
||||
|
||||
- `loops/*/health.jsonl` — 0 manual rescues, FPR 0.0 where measured
|
||||
- `loops/kaizen-stack/bootstrap-log.md` — 3/3 fleet E2E cycles
|
||||
- `loops/registry-hygiene/health.jsonl` — R2 sweep live (ACTIVITY-WP-0013)
|
||||
- `loops/regulator/stabilize-observation.yml` — override recorded
|
||||
- `loops/*/cadence.yml` — `operate_target` drafts applied
|
||||
|
||||
## Deferred (not in scope)
|
||||
|
||||
- `reuse-surface` hygiene batch promotion — still gated on 7 daily stabilize
|
||||
cycles per `expansion-reuse-surface.yml` (separate from cadence ramp)
|
||||
- Loop health collector automation — still blocked on activity-core instruction executor
|
||||
|
||||
## Related
|
||||
|
||||
- ADR-003 cadence ramp policy (operator override authority)
|
||||
- LOOP-WP-0005 T07 regulator review gate
|
||||
- `loops/regulator/dashboard.md`
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# activity-core Handoff — coulomb-loop Bootstrap
|
||||
|
||||
**Customer:** coulomb-loop
|
||||
**Status:** ready for activity-core PR/issue
|
||||
**Status:** weekly operate phase — synced 2026-06-19
|
||||
|
||||
## Prerequisites (done)
|
||||
|
||||
|
|
@ -17,9 +17,10 @@
|
|||
- [x] `ACTIVITY_DEFINITION_DIRS` includes coulomb-loop; `sync_activity_definitions` (7 upserted)
|
||||
- [x] Dev stack up (docker compose, alembic, worker + API on 8010)
|
||||
- [x] E2E manual trigger: metrics optimize → 6 tasks (2026-06-18)
|
||||
- [x] Enable daily kaizen stack (`daily-metrics-optimize`, `daily-coach-orientation`,
|
||||
`daily-optimization-review`) — crons 08:00/09:00/10:00 (DEC-005)
|
||||
- [x] Enable daily kaizen stack — crons 08:00/09:00/10:00 (DEC-005)
|
||||
- [x] Bootstrap exit 3/3 E2E cycles; definition files renamed hourly→daily (2026-06-18)
|
||||
- [x] Promote to weekly operate phase (DEC-008, 2026-06-19); daily→weekly definition rename
|
||||
- [x] **Sync weekly definitions** — retired `coulomb-daily-*` disabled; `coulomb-weekly-*` upserted; Temporal schedules synced (2026-06-19)
|
||||
|
||||
## Smoke commands (pilot)
|
||||
|
||||
|
|
@ -31,17 +32,35 @@ kaizen-agentic metrics optimize --target /home/worsch/kaizen-agentic
|
|||
|
||||
## Definition enable order
|
||||
|
||||
1. `daily-metrics-optimize` (enabled)
|
||||
2. `daily-coach-orientation` (enabled)
|
||||
3. `daily-optimization-review` (enabled)
|
||||
1. `weekly-metrics-optimize` (enabled)
|
||||
2. `weekly-coach-orientation` (enabled)
|
||||
3. `weekly-optimization-review` (enabled)
|
||||
4. `low-success-rate-review` (enabled — event primary)
|
||||
5. `daily-metrics-health-sweep` (backup, disabled)
|
||||
6. `daily-registry-hygiene-sweep` (after shell resolver)
|
||||
7. `daily-loop-health-collector` (after instruction executor)
|
||||
5. `weekly-metrics-health-sweep` (backup, disabled)
|
||||
6. `weekly-registry-hygiene-sweep` (enabled — ACTIVITY-WP-0013)
|
||||
7. `weekly-loop-health-collector` (after instruction executor)
|
||||
|
||||
## Blocked on activity-core
|
||||
|
||||
- R2 `reuse_surface_report_gaps` shell resolver — LOOP-WP-0005 T06 handoff posted
|
||||
- Instruction executor for loop health collector
|
||||
- Daily loop-health-collector — LOOP-WP-0004 done; cron `0 11 * * *` (disabled)
|
||||
- Hot-reload definitions/schedules — hub message `f4876517`
|
||||
- Weekly loop-health-collector — cron `0 11 * * 1` (disabled)
|
||||
|
||||
## Closed (activity-core)
|
||||
|
||||
- R2 `reuse_surface_report_gaps` — ACTIVITY-WP-0013 (`2078915`); sweep enabled
|
||||
- R1 `event-payload` — ACTIVITY-WP-0011; low-success-rate-review live
|
||||
|
||||
## Sync commands (reference)
|
||||
|
||||
```bash
|
||||
cd ~/activity-core
|
||||
ACTCORE_DB_URL=postgresql+asyncpg://actcore:actcore@localhost:5433/actcore \
|
||||
ACTIVITY_DEFINITION_DIRS=/home/worsch/coulomb-loop \
|
||||
make sync-activity-definitions
|
||||
ACTCORE_DB_URL=postgresql+asyncpg://actcore:actcore@localhost:5433/actcore \
|
||||
TEMPORAL_HOST=localhost:7233 \
|
||||
uv run python -m activity_core.sync_schedules
|
||||
```
|
||||
|
||||
Future promotions: `kaizen-agentic schedule promote --engagement-repo ...` (see
|
||||
`loops/regulator/session-template.md`).
|
||||
|
|
@ -1,26 +1,14 @@
|
|||
loop: kaizen-improvement-stack
|
||||
phase: stabilize
|
||||
cron: "0 8 * * *"
|
||||
phase: operate
|
||||
cron: "0 8 * * 1"
|
||||
chain:
|
||||
metrics: "0 8 * * *"
|
||||
coach: "0 9 * * *"
|
||||
optimization: "0 10 * * *"
|
||||
promoted_at: "2026-06-18"
|
||||
metrics: "0 8 * * 1"
|
||||
coach: "0 9 * * 1"
|
||||
optimization: "0 10 * * 1"
|
||||
promoted_at: "2026-06-19"
|
||||
demotion_count: 0
|
||||
regulator_approval: approved
|
||||
operate_target:
|
||||
phase: operate
|
||||
promotion_gate: LOOP-WP-0005-T07
|
||||
chain:
|
||||
metrics: "0 8 * * 1"
|
||||
coach: "0 9 * * 1"
|
||||
optimization: "0 10 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
criteria:
|
||||
- false_positive_rate < 0.2
|
||||
- manual_rescues == 0
|
||||
- min_daily_cycles: 14
|
||||
notes: >
|
||||
Promoted from bootstrap hourly after 3/3 consecutive E2E cycles (2026-06-18).
|
||||
Daily chain — metrics 08:00, coach 09:00, optimization 10:00 Europe/Berlin.
|
||||
operate_target: weekly Mon 08:00–10:00 (draft; do not promote until T07).
|
||||
Promoted from stabilize daily to operate weekly per DEC-008 (operator override,
|
||||
LOOP-WP-0005 T07). Weekly chain Mon 08:00–10:00 Europe/Berlin.
|
||||
Prior stabilize promotion: 2026-06-18 (DEC-005).
|
||||
|
|
@ -1,2 +1,3 @@
|
|||
{"timestamp":"2026-06-18T10:06:00Z","loop":"kaizen-improvement-stack","phase":"bootstrap","tasks_created":12,"tasks_completed":null,"manual_rescues":0,"false_positive_rate":0.0,"agent_success_rate":0.85,"mean_session_time_sec":104,"cost_signal":12,"notes":"3/3 E2E cycles; final cycle metrics 6+3+3 tasks"}
|
||||
{"timestamp":"2026-06-18T10:16:00Z","loop":"kaizen-improvement-stack","phase":"stabilize","tasks_created":null,"tasks_completed":null,"manual_rescues":0,"false_positive_rate":0.0,"agent_success_rate":0.85,"mean_session_time_sec":103,"cost_signal":null,"notes":"Promoted to daily 08/09/10 per DEC-005"}
|
||||
{"timestamp":"2026-06-18T10:16:00Z","loop":"kaizen-improvement-stack","phase":"stabilize","tasks_created":null,"tasks_completed":null,"manual_rescues":0,"false_positive_rate":0.0,"agent_success_rate":0.85,"mean_session_time_sec":103,"cost_signal":null,"notes":"Promoted to daily 08/09/10 per DEC-005"}
|
||||
{"timestamp":"2026-06-19T00:00:00Z","loop":"kaizen-improvement-stack","phase":"operate","manual_rescues":0,"false_positive_rate":0.0,"notes":"DEC-008 weekly promotion; LOOP-WP-0005 T07 regulator review (operator override day 2/14)"}
|
||||
|
|
|
|||
|
|
@ -1,34 +1,39 @@
|
|||
version: "1"
|
||||
version: '1'
|
||||
loop: kaizen-improvement-stack
|
||||
decision: DEC-001 option A (2026-06-18)
|
||||
phase: bootstrap
|
||||
|
||||
# Repos currently receiving scheduled optimization/coach runs
|
||||
phase: operate
|
||||
active:
|
||||
- slug: kaizen-agentic
|
||||
root: /home/worsch/kaizen-agentic
|
||||
agents: [coach, optimization]
|
||||
status: active
|
||||
rationale: supplier dogfood
|
||||
- slug: the-custodian
|
||||
root: /home/worsch/the-custodian
|
||||
agents: [coach, optimization]
|
||||
status: active
|
||||
rationale: state-hub coordination operator
|
||||
- slug: activity-core
|
||||
root: /home/worsch/activity-core
|
||||
agents: [coach, optimization]
|
||||
status: active
|
||||
rationale: scheduler owner
|
||||
|
||||
# Ordered candidates after pilot — promoted by regulator (ADR-004)
|
||||
- slug: kaizen-agentic
|
||||
root: /home/worsch/kaizen-agentic
|
||||
agents:
|
||||
- coach
|
||||
- optimization
|
||||
status: active
|
||||
rationale: supplier dogfood
|
||||
- slug: the-custodian
|
||||
root: /home/worsch/the-custodian
|
||||
agents:
|
||||
- coach
|
||||
- optimization
|
||||
status: active
|
||||
rationale: state-hub coordination operator
|
||||
- slug: activity-core
|
||||
root: /home/worsch/activity-core
|
||||
agents:
|
||||
- coach
|
||||
- optimization
|
||||
status: active
|
||||
rationale: scheduler owner
|
||||
expansion_queue:
|
||||
- slug: reuse-surface
|
||||
agents: [coach, optimization, scope-analyst]
|
||||
domain: helix_forge
|
||||
- slug: vergabe-teilnahme
|
||||
agents: [coach, scope-analyst]
|
||||
domain: coulomb_social
|
||||
|
||||
# Repos paused after diminishing-returns detection (ADR-004)
|
||||
saturated: []
|
||||
- slug: reuse-surface
|
||||
agents:
|
||||
- coach
|
||||
- optimization
|
||||
- scope-analyst
|
||||
domain: helix_forge
|
||||
- slug: vergabe-teilnahme
|
||||
agents:
|
||||
- coach
|
||||
- scope-analyst
|
||||
domain: coulomb_social
|
||||
saturated: []
|
||||
|
|
|
|||
|
|
@ -1,23 +1,11 @@
|
|||
loop: quality-escalation
|
||||
phase: stabilize
|
||||
cron: "0 6 * * *"
|
||||
phase: operate
|
||||
cron: "0 6 * * 1"
|
||||
event_primary: low-success-rate-review
|
||||
sweep_fallback: daily-metrics-health-sweep
|
||||
stabilize_target:
|
||||
event: enabled
|
||||
sweep_cron: "0 6 * * *"
|
||||
operate_target:
|
||||
phase: operate
|
||||
promotion_gate: LOOP-WP-0005-T07
|
||||
event_primary: low-success-rate-review
|
||||
sweep_cron: "0 6 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
criteria:
|
||||
- false_positive_rate < 0.2
|
||||
- manual_rescues == 0
|
||||
- min_daily_cycles: 14
|
||||
sweep_fallback: weekly-metrics-health-sweep
|
||||
promoted_at: "2026-06-19"
|
||||
regulator_approval: approved
|
||||
notes: >-
|
||||
Event path proven 2026-06-18 (ACTIVITY-WP-0011 + NATS smoke, tasks_spawned=1).
|
||||
low-success-rate-review enabled; hourly sweep retired to daily backup cron (disabled).
|
||||
operate_target: event-only primary; weekly Mon 06:00 backup sweep (draft).
|
||||
Promoted from stabilize daily to operate weekly per DEC-008 (LOOP-WP-0005 T07).
|
||||
Event path primary (ACTIVITY-WP-0011); weekly Mon 06:00 backup sweep (disabled).
|
||||
Prior stabilize: event proven 2026-06-18.
|
||||
|
|
@ -1 +1,2 @@
|
|||
{"timestamp":"2026-06-18T10:16:00Z","loop":"quality-escalation","phase":"bootstrap","tasks_created":0,"manual_rescues":0,"false_positive_rate":null,"notes":"Event path blocked on activity-core R1; sweep definition ready, disabled"}
|
||||
{"timestamp":"2026-06-18T10:16:00Z","loop":"quality-escalation","phase":"bootstrap","tasks_created":0,"manual_rescues":0,"false_positive_rate":null,"notes":"Event path blocked on activity-core R1; sweep definition ready, disabled"}
|
||||
{"timestamp":"2026-06-19T00:00:00Z","loop":"quality-escalation","phase":"operate","manual_rescues":0,"false_positive_rate":0.0,"notes":"DEC-008 weekly promotion; LOOP-WP-0005 T07 regulator review (operator override day 2/14)"}
|
||||
|
|
|
|||
|
|
@ -18,8 +18,12 @@ triggers:
|
|||
|
||||
bootstrap:
|
||||
mechanism: daily_sweep_backup
|
||||
definition: daily-metrics-health-sweep
|
||||
definition: weekly-metrics-health-sweep
|
||||
stabilize:
|
||||
mechanism: event_primary
|
||||
definition: low-success-rate-review
|
||||
backup_sweep_cron: "0 6 * * *"
|
||||
backup_sweep_cron: "0 6 * * *"
|
||||
operate:
|
||||
mechanism: event_primary
|
||||
definition: low-success-rate-review
|
||||
backup_sweep_cron: "0 6 * * 1"
|
||||
|
|
@ -1,22 +1,12 @@
|
|||
loop: registry-hygiene
|
||||
phase: stabilize
|
||||
cron: "0 7 * * *"
|
||||
batch_size: 3
|
||||
domain_rotation: daily
|
||||
promoted_at: "2026-06-18"
|
||||
operate_target:
|
||||
phase: operate
|
||||
promotion_gate: LOOP-WP-0005-T07
|
||||
cron: "0 9 * * 1"
|
||||
batch_size: 2
|
||||
domain_rotation: weekly
|
||||
timezone: Europe/Berlin
|
||||
criteria:
|
||||
- false_positive_rate < 0.2
|
||||
- repeat_task_rate < 0.1
|
||||
- min_daily_cycles: 14
|
||||
phase: operate
|
||||
cron: "0 9 * * 1"
|
||||
batch_size: 2
|
||||
domain_rotation: weekly
|
||||
promoted_at: "2026-06-19"
|
||||
regulator_approval: approved
|
||||
notes: >
|
||||
Bootstrap 3/3 rounds complete (2026-06-18). Promoted hourly→daily per DEC-006.
|
||||
helix_forge added to rollout (T06). Weekly promotion deferred until 2 weeks daily.
|
||||
operate_target: weekly Mon 09:00, 1–2 domains per run (draft).
|
||||
Promoted from stabilize daily 07:00 to operate weekly Mon 09:00 per DEC-008
|
||||
(LOOP-WP-0005 T07). Batch 2, weekly domain rotation.
|
||||
Prior stabilize promotion: 2026-06-18 (DEC-006). reuse-surface batch expansion
|
||||
still deferred per expansion-reuse-surface.yml.
|
||||
|
|
@ -22,8 +22,7 @@ onboarding:
|
|||
- reuse-surface establish --publish-check
|
||||
|
||||
blockers:
|
||||
- reuse_surface_report_gaps shell resolver (activity-core; LOOP-WP-0005-T06)
|
||||
- daily-registry-hygiene-sweep enabled gate
|
||||
- issue-core task sink for hygiene task emission (operator)
|
||||
|
||||
promotion:
|
||||
trigger: shell resolver shipped + 7 daily stabilize cycles on custodian batch
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
{"timestamp":"2026-06-18T10:16:00Z","loop":"registry-hygiene","phase":"bootstrap","tasks_created":0,"manual_rescues":0,"notes":"T01 signals/rollout committed; sweep disabled pending shell resolver"}
|
||||
{"timestamp":"2026-06-18T11:22:00Z","loop":"registry-hygiene","phase":"bootstrap","tasks_created":9,"manual_rescues":0,"false_positive_rate":0.0,"notes":"3/3 pilot rounds; empty_scaffolds=2 stable"}
|
||||
{"timestamp":"2026-06-18T11:22:00Z","loop":"registry-hygiene","phase":"stabilize","tasks_created":null,"manual_rescues":0,"notes":"Promoted daily 07:00; helix_forge added per T06 DEC-006"}
|
||||
{"timestamp":"2026-06-18T11:22:00Z","loop":"registry-hygiene","phase":"stabilize","tasks_created":null,"manual_rescues":0,"notes":"Promoted daily 07:00; helix_forge added per T06 DEC-006"}
|
||||
{"timestamp":"2026-06-18T16:11:00Z","loop":"registry-hygiene","phase":"stabilize","tasks_created":4,"manual_rescues":0,"false_positive_rate":0.0,"notes":"R2 ACTIVITY-WP-0013 live; sweep enabled 744294af; resolver 4 gaps; emit 404 issue-core"}
|
||||
{"timestamp":"2026-06-19T00:00:00Z","loop":"registry-hygiene","phase":"operate","manual_rescues":0,"false_positive_rate":0.0,"notes":"DEC-008 weekly promotion; LOOP-WP-0005 T07 regulator review (operator override day 2/14)"}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
{
|
||||
"cursor_domain": "custodian",
|
||||
"cursor_index": 0,
|
||||
"last_run": "2026-06-18T11:22:00Z",
|
||||
"last_batch": ["kaizen-agentic", "the-custodian", "activity-core"],
|
||||
"rounds_completed": 3,
|
||||
"duplicate_tasks": 0
|
||||
}
|
||||
"cursor": 2,
|
||||
"last_batch": [
|
||||
"reuse-surface",
|
||||
"kaizen-agentic",
|
||||
"the-custodian"
|
||||
],
|
||||
"updated_at": "2026-06-18T16:11:20.117486+00:00"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,20 +1,11 @@
|
|||
loop: loop-regulator
|
||||
phase: stabilize
|
||||
collector_cron: "0 11 * * *"
|
||||
phase: operate
|
||||
collector_cron: "0 11 * * 1"
|
||||
regulator_session_cron: "0 11 * * 1"
|
||||
promoted_at: "2026-06-18"
|
||||
operate_target:
|
||||
phase: operate
|
||||
promotion_gate: LOOP-WP-0005-T07
|
||||
collector_cron: "0 11 * * 1"
|
||||
regulator_session_cron: "0 11 * * 1"
|
||||
timezone: Europe/Berlin
|
||||
criteria:
|
||||
- all first-order loops at operate phase
|
||||
- false_positive_rate < 0.2
|
||||
promoted_at: "2026-06-19"
|
||||
regulator_approval: approved
|
||||
notes: >
|
||||
Promoted 2026-06-18 (LOOP-WP-0004 T08). Collector daily 11:00 after first-order
|
||||
daily chains complete. Regulator optimization session weekly Monday 11:00.
|
||||
Emergency demotion remains event-driven (immediate task).
|
||||
operate_target: collector aligns with weekly session Mon 11:00 (draft).
|
||||
Promoted from stabilize daily to operate weekly per DEC-008 (LOOP-WP-0005 T07).
|
||||
Collector and regulator session both Mon 11:00 Europe/Berlin.
|
||||
Prior stabilize promotion: 2026-06-18 (DEC-007). Emergency demotion remains
|
||||
event-driven (immediate task).
|
||||
|
|
@ -1,38 +1,40 @@
|
|||
# Loop regulator dashboard
|
||||
|
||||
Regenerated 2026-06-18 (LOOP-WP-0005 T01).
|
||||
Regenerated 2026-06-19 (LOOP-WP-0005 T07 / DEC-008).
|
||||
|
||||
## Summary
|
||||
|
||||
| Loop | Phase | Last health | Manual rescues | Recommendation |
|
||||
|------|-------|-------------|----------------|----------------|
|
||||
| kaizen-improvement-stack | stabilize | 2026-06-18T10:16Z | 0 | **hold** — daily chain 08:00→10:00 active |
|
||||
| quality-escalation | stabilize | 2026-06-18T12:05Z | 0 | **hold** — event path live; backup sweep disabled |
|
||||
| registry-hygiene | stabilize | 2026-06-18T11:22Z | 0 | **hold** — daily sweep; blocked on shell resolver |
|
||||
| loop-regulator | stabilize | 2026-06-18T11:22Z | 0 | **hold** — daily collector 11:00 (manual until executor) |
|
||||
| kaizen-improvement-stack | operate | 2026-06-19T00:00Z | 0 | **promoted** — weekly Mon 08:00–10:00 |
|
||||
| quality-escalation | operate | 2026-06-19T00:00Z | 0 | **promoted** — event primary; weekly backup sweep |
|
||||
| registry-hygiene | operate | 2026-06-19T00:00Z | 0 | **promoted** — weekly Mon 09:00, batch 2 |
|
||||
| loop-regulator | operate | 2026-06-19T00:00Z | 0 | **promoted** — weekly Mon 11:00 collector + session |
|
||||
|
||||
## Stabilize observation (ADR-003)
|
||||
## Observation window (ADR-003)
|
||||
|
||||
| Field | Value |
|
||||
|-------|-------|
|
||||
| Started | 2026-06-18 |
|
||||
| Review | 2026-07-02 |
|
||||
| Workplan | LOOP-WP-0005 |
|
||||
| Planned review | 2026-07-02 |
|
||||
| Closed | 2026-06-19 (operator override, DEC-008) |
|
||||
| Cycles observed | 2/14 |
|
||||
| Outcome | promoted to operate (weekly) |
|
||||
|
||||
See `stabilize-observation.yml`. Weekly promotion **not** before review.
|
||||
See `stabilize-observation.yml`.
|
||||
|
||||
## Active definitions (activity-core)
|
||||
|
||||
| Definition | Cron | Enabled |
|
||||
|------------|------|---------|
|
||||
| `coulomb-daily-metrics-optimize` | `0 8 * * *` | yes |
|
||||
| `coulomb-daily-coach-orientation` | `0 9 * * *` | yes |
|
||||
| `coulomb-daily-optimization-review` | `0 10 * * *` | yes |
|
||||
| `coulomb-weekly-metrics-optimize` | `0 8 * * 1` | yes |
|
||||
| `coulomb-weekly-coach-orientation` | `0 9 * * 1` | yes |
|
||||
| `coulomb-weekly-optimization-review` | `0 10 * * 1` | yes |
|
||||
| `coulomb-low-success-rate-review` | event | yes |
|
||||
| `coulomb-daily-metrics-health-sweep` | `0 6 * * *` | no (backup) |
|
||||
| `coulomb-daily-registry-hygiene-sweep` | `0 7 * * *` | no (resolver) |
|
||||
| `coulomb-weekly-metrics-health-sweep` | `0 6 * * 1` | no (backup) |
|
||||
| `coulomb-weekly-registry-hygiene-sweep` | `0 9 * * 1` | yes |
|
||||
|
||||
Retired `coulomb-hourly-*` ids disabled on sync.
|
||||
Retired `coulomb-daily-*` and `coulomb-hourly-*` ids disabled on next sync.
|
||||
|
||||
## Rotation queue (ADR-004)
|
||||
|
||||
|
|
@ -41,7 +43,7 @@ Retired `coulomb-hourly-*` ids disabled on sync.
|
|||
| kaizen-agentic | n/a (<14 cycles) | keep active |
|
||||
| the-custodian | n/a | keep active |
|
||||
| activity-core | n/a | keep active |
|
||||
| reuse-surface | — | onboarded; hygiene batch after R2 resolver |
|
||||
| reuse-surface | — | onboarded; hygiene batch after 7 daily cycles |
|
||||
|
||||
No rotation recommended. See `rotation-runbook.md`.
|
||||
|
||||
|
|
@ -49,11 +51,12 @@ No rotation recommended. See `rotation-runbook.md`.
|
|||
|
||||
| Item | Owner | Hub ref |
|
||||
|------|-------|---------|
|
||||
| `reuse_surface_report_gaps` resolver | activity-core | handoff R2 posted |
|
||||
| Issue-core task sink (`/issues/`) | operator | manual trigger 4 tasks; emit 404 |
|
||||
| Hot-reload definitions/schedules | activity-core | `f4876517` |
|
||||
| Loop health instruction executor | activity-core | `daily-loop-health-collector` |
|
||||
| Loop health instruction executor | activity-core | `weekly-loop-health-collector` |
|
||||
|
||||
## Regulator cadence (DEC-007)
|
||||
|
||||
- Collector: daily 11:00
|
||||
## Regulator cadence (DEC-008)
|
||||
|
||||
- Collector: weekly Monday 11:00
|
||||
- Session: weekly Monday 11:00
|
||||
|
|
@ -1 +1,2 @@
|
|||
{"timestamp":"2026-06-18T11:22:00Z","loop":"loop-regulator","phase":"stabilize","manual_rescues":0,"false_positive_rate":0.0,"notes":"DEC-007 daily collector + weekly session; T09 rotation runbook committed, no rotation executed"}
|
||||
{"timestamp":"2026-06-18T11:22:00Z","loop":"loop-regulator","phase":"stabilize","manual_rescues":0,"false_positive_rate":0.0,"notes":"DEC-007 daily collector + weekly session; T09 rotation runbook committed, no rotation executed"}
|
||||
{"timestamp":"2026-06-19T00:00:00Z","loop":"loop-regulator","phase":"operate","manual_rescues":0,"false_positive_rate":0.0,"notes":"DEC-008 weekly promotion; LOOP-WP-0005 T07 regulator review (operator override day 2/14)"}
|
||||
|
|
|
|||
|
|
@ -33,6 +33,30 @@ kaizen-agentic metrics record optimization --success --time <s> --quality <0-1>
|
|||
|
||||
Record decision in state-hub when promotion/demotion approved.
|
||||
|
||||
## Cadence promotion (atomic)
|
||||
|
||||
After regulator approval, promote all three scheduling layers in one step:
|
||||
|
||||
```bash
|
||||
kaizen-agentic schedule promote \
|
||||
--engagement-repo /home/worsch/coulomb-loop \
|
||||
--engagement coulomb-loop \
|
||||
--to-phase operate \
|
||||
--activity-core /home/worsch/activity-core
|
||||
```
|
||||
|
||||
Dry-run first: add `--dry-run`. Repair fleet drift only (definitions already promoted):
|
||||
|
||||
```bash
|
||||
kaizen-agentic schedule promote \
|
||||
--engagement-repo /home/worsch/coulomb-loop \
|
||||
--fleet-only \
|
||||
--activity-core /home/worsch/activity-core
|
||||
```
|
||||
|
||||
Layers: (1) `loops/*/cadence.yml`, (2) `activity-definitions/` + activity-core sync,
|
||||
(3) pilot `.kaizen/schedule.yml` via roster.
|
||||
|
||||
## Promotion checklist (all must hold)
|
||||
|
||||
- Bootstrap exit from source workplan met
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
version: "1"
|
||||
started_at: "2026-06-18"
|
||||
review_at: "2026-07-02"
|
||||
closed_at: "2026-06-19"
|
||||
duration_days: 14
|
||||
policy: ADR-003
|
||||
loops:
|
||||
|
|
@ -12,6 +13,15 @@ exit_criteria:
|
|||
false_positive_rate_max: 0.2
|
||||
manual_rescues_max: 0
|
||||
min_daily_cycles: 14
|
||||
override:
|
||||
applied_at: "2026-06-19"
|
||||
authority: operator
|
||||
decision: DEC-008
|
||||
cycles_observed: 2
|
||||
rationale: >
|
||||
Bootstrap evidence strong (3/3 E2E, 0 manual rescues, FPR < 0.2).
|
||||
Operator override per ADR-003 to complete operate-phase setup.
|
||||
outcome: promoted_operate
|
||||
notes: >
|
||||
Observation window opened after bootstrap sprint (LOOP-WP-0000–0004) and daily
|
||||
definition rename (9b19956). Weekly promotion requires regulator session LOOP-WP-0005-T07.
|
||||
Observation window opened after bootstrap sprint (LOOP-WP-0000–0004).
|
||||
Closed early via DEC-008; weekly promotion applied in loops/*/cadence.yml.
|
||||
|
|
@ -2,11 +2,11 @@
|
|||
id: LOOP-WP-0000
|
||||
type: workplan
|
||||
title: "Engagement bootstrap (registration, assessment, governance)"
|
||||
domain: coulomb_social
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: done
|
||||
owner: coulomb-loop
|
||||
topic_slug: coulomb_social
|
||||
topic_slug: coulomb-social
|
||||
supplier: kaizen-agentic
|
||||
created: "2026-06-18"
|
||||
updated: "2026-06-18"
|
||||
|
|
|
|||
|
|
@ -2,11 +2,11 @@
|
|||
id: LOOP-WP-0001
|
||||
type: workplan
|
||||
title: "Kaizen Improvement Stack (coach + metrics + optimization)"
|
||||
domain: coulomb_social
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: done
|
||||
owner: coulomb-loop
|
||||
topic_slug: coulomb_social
|
||||
topic_slug: coulomb-social
|
||||
supplier: kaizen-agentic
|
||||
created: "2026-06-18"
|
||||
updated: "2026-06-18"
|
||||
|
|
|
|||
|
|
@ -2,11 +2,11 @@
|
|||
id: LOOP-WP-0002
|
||||
type: workplan
|
||||
title: "Reactive Quality Escalation (signal-driven improvement)"
|
||||
domain: coulomb_social
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: finished
|
||||
owner: coulomb-loop
|
||||
topic_slug: coulomb_social
|
||||
topic_slug: coulomb-social
|
||||
supplier: kaizen-agentic
|
||||
created: "2026-06-18"
|
||||
updated: "2026-06-18"
|
||||
|
|
|
|||
|
|
@ -2,11 +2,11 @@
|
|||
id: LOOP-WP-0003
|
||||
type: workplan
|
||||
title: "Registry & Orientation Hygiene (fleet legibility)"
|
||||
domain: coulomb_social
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: done
|
||||
owner: coulomb-loop
|
||||
topic_slug: coulomb_social
|
||||
topic_slug: coulomb-social
|
||||
supplier: kaizen-agentic
|
||||
created: "2026-06-18"
|
||||
updated: "2026-06-18"
|
||||
|
|
|
|||
|
|
@ -2,11 +2,11 @@
|
|||
id: LOOP-WP-0004
|
||||
type: workplan
|
||||
title: "Loop Regulator (second-order improvement)"
|
||||
domain: coulomb_social
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: done
|
||||
owner: coulomb-loop
|
||||
topic_slug: coulomb_social
|
||||
topic_slug: coulomb-social
|
||||
supplier: kaizen-agentic
|
||||
created: "2026-06-18"
|
||||
updated: "2026-06-18"
|
||||
|
|
|
|||
|
|
@ -2,14 +2,14 @@
|
|||
id: LOOP-WP-0005
|
||||
type: workplan
|
||||
title: "Operate phase observation and fleet expansion prep"
|
||||
domain: coulomb_social
|
||||
domain: communication
|
||||
repo: coulomb-loop
|
||||
status: active
|
||||
status: done
|
||||
owner: coulomb-loop
|
||||
topic_slug: coulomb_social
|
||||
topic_slug: coulomb-social
|
||||
supplier: kaizen-agentic
|
||||
created: "2026-06-18"
|
||||
updated: "2026-06-18"
|
||||
updated: "2026-06-19"
|
||||
depends_on:
|
||||
- LOOP-WP-0001
|
||||
- LOOP-WP-0002
|
||||
|
|
@ -41,7 +41,7 @@ tasks:
|
|||
title: Handoff reuse_surface_report_gaps resolver to activity-core
|
||||
state_hub_task_id: "92f93ac2-8d01-4094-b701-aa991e4b4caf"
|
||||
- id: T07
|
||||
status: todo
|
||||
status: done
|
||||
title: Regulator review at observation window end (weekly promotion decision)
|
||||
state_hub_task_id: "890416df-45db-437c-ba9a-355ac464ad0e"
|
||||
state_hub_workstream_id: "620731c9-ed7b-478d-97a2-5e251c2c36ff"
|
||||
|
|
@ -49,7 +49,7 @@ state_hub_workstream_id: "620731c9-ed7b-478d-97a2-5e251c2c36ff"
|
|||
|
||||
# LOOP-WP-0005 — Operate Phase Observation & Fleet Expansion Prep
|
||||
|
||||
**Status:** active
|
||||
**Status:** done
|
||||
**Owner:** coulomb-loop
|
||||
**Depends on:** LOOP-WP-0000–0004 (bootstrap sprint complete)
|
||||
|
||||
|
|
@ -65,7 +65,7 @@ premature promotion. Refresh operator-facing health artefacts, start the ADR-003
|
|||
|------|-------|-------------------|
|
||||
| kaizen-improvement-stack | stabilize | daily coach/optimization chain |
|
||||
| quality-escalation | stabilize | event `low-success-rate-review` + daily backup sweep |
|
||||
| registry-hygiene | stabilize | daily sweep (disabled pending shell resolver) |
|
||||
| registry-hygiene | stabilize | daily sweep enabled (ACTIVITY-WP-0013) |
|
||||
| loop-regulator | stabilize | daily collector 11:00 + weekly session Mon 11:00 |
|
||||
|
||||
Bootstrap sprint closed. Activity definitions renamed `coulomb-daily-*`. Worker
|
||||
|
|
@ -152,16 +152,19 @@ criteria for `coulomb-daily-registry-hygiene-sweep`.
|
|||
|
||||
```task
|
||||
id: LOOP-WP-0005-T07
|
||||
status: todo
|
||||
status: done
|
||||
priority: low
|
||||
state_hub_task_id: "890416df-45db-437c-ba9a-355ac464ad0e"
|
||||
```
|
||||
|
||||
On or after `review_at`, run regulator session; file DEC-008 if weekly promotion approved.
|
||||
Completed 2026-06-19: operator override per ADR-003 (day 2/14). Regulator session
|
||||
evidence reviewed; all loops promoted to operate weekly. DEC-008 filed;
|
||||
`loops/*/cadence.yml` updated; activity definitions renamed `coulomb-daily-*` →
|
||||
`coulomb-weekly-*`. activity-core sync pending.
|
||||
|
||||
## Definition of done
|
||||
|
||||
- Dashboard and SCOPE reflect stabilize reality
|
||||
- Observation window documented with review date
|
||||
- reuse-surface expansion path defined
|
||||
- Weekly promotion decision deferred until T07
|
||||
- [x] Dashboard and SCOPE reflect stabilize reality
|
||||
- [x] Observation window documented with review date
|
||||
- [x] reuse-surface expansion path defined
|
||||
- [x] Weekly promotion decision (DEC-008, operator override)
|
||||
Loading…
Add table
Add a link
Reference in a new issue