[meta] Kan-ductor maturity waves #2

Open
opened 2026-05-09 23:22:21 +02:00 by codex · 6 comments
Collaborator

Summary

Primary coordination issue for the Kan-ductor Godzilla Loop: the 24-PR maturity program that turns Kan-ductor into the calm operational board for Piotr + Iskra.

Canonical plan PR: #1
Plan file: docs/kan-ductor-working-pr-plan.md

Operating Loop

capture -> clarify -> move -> audit -> explain

Execution motto:

"The arrogance of men is thinking nature is in our control and not the other way around. Let him deliver."
— pdurlej do Codexa, 2026-05-09 23:15

Rules

  • Forgejo issues are the coordination ledger.
  • One atomic issue should map to one PR.
  • Codex/Godzilla executes repository changes.
  • Ollama Cloud workers may scout, critique, draft, and review through Swarmheart/Ralph-loop.
  • Opus/Claude arbitrates when judgment, risk, or disagreement matters.
  • Owner approval is required before production deploy/restart, DB migration, credential changes, trust-boundary changes, machine identity issuance/rotation in production, or merge decisions with high risk.
  • After at most 5 agent-to-agent comments without Piotr, post an Owner Checkpoint.

Waves

Wave 1: Maintainer Foundation

  • ops/forgejo-first-ci-and-release
  • agent/machine-identities
  • agent/admin-identity-ui-or-cli
  • activity/explain-what-changed-today
  • activity/agent-visible-attribution
  • agent/proposal-review-api-complete
  • web/agent-proposals-inbox

Wave 2: Board Maturity

  • cards/lightweight-relations
  • mcp/card-relations-tools
  • columns/policies-and-wip
  • mcp/policy-aware-actions
  • web/blocked-and-policy-cues
  • projection/manual-kan-drift-detection

Wave 3: Operations Hardening

  • ai-inbox-conventions-hardening
  • mcp/ops-smoke-and-health
  • ops/openclaw-mcporter-registration
  • web/machine-activity-audit-view

Wave 4: Analytics Foundation

  • activity/backfill-created-list
  • analytics/event-foundation-v0
  • analytics/flow-metrics-v0
  • web/flow-health-lite

Wave 5: Swarmheart / Leviathan

  • swarmheart/leviathan-projection-contract
  • swarmheart/leviathan-readonly-preview
  • swarmheart/leviathan-write-projection

Owner Checkpoint Template

## Owner Checkpoint @ turn N

**Topic so far**: ...
**What we agreed**: ...
**Where we disagree**: ...
**Risk class**: runtime / exposure / process / product
**Decision needed**: yes/no, specifically what
**Recommended next move**: one option, named risks

— codex

Definition Of Done

Kan-ductor is role-ready when Iskra can safely create, move, comment, propose, and explain board changes; Piotr can inspect and revoke machine identities; agent actions are visibly attributed and audited; cards express blockers; columns express policies/WIP; drift is detected; flow analytics can be computed; and Swarmheart can project Leviathan state without making Kan-ductor canonical memory.

## Summary Primary coordination issue for the Kan-ductor Godzilla Loop: the 24-PR maturity program that turns Kan-ductor into the calm operational board for Piotr + Iskra. Canonical plan PR: #1 Plan file: `docs/kan-ductor-working-pr-plan.md` ## Operating Loop ```text capture -> clarify -> move -> audit -> explain ``` Execution motto: > "The arrogance of men is thinking nature is in our control and not the other way around. Let him deliver." > — pdurlej do Codexa, 2026-05-09 23:15 ## Rules - Forgejo issues are the coordination ledger. - One atomic issue should map to one PR. - Codex/Godzilla executes repository changes. - Ollama Cloud workers may scout, critique, draft, and review through Swarmheart/Ralph-loop. - Opus/Claude arbitrates when judgment, risk, or disagreement matters. - Owner approval is required before production deploy/restart, DB migration, credential changes, trust-boundary changes, machine identity issuance/rotation in production, or merge decisions with high risk. - After at most 5 agent-to-agent comments without Piotr, post an Owner Checkpoint. ## Waves ### Wave 1: Maintainer Foundation - [ ] `ops/forgejo-first-ci-and-release` - [ ] `agent/machine-identities` - [ ] `agent/admin-identity-ui-or-cli` - [ ] `activity/explain-what-changed-today` - [ ] `activity/agent-visible-attribution` - [ ] `agent/proposal-review-api-complete` - [ ] `web/agent-proposals-inbox` ### Wave 2: Board Maturity - [ ] `cards/lightweight-relations` - [ ] `mcp/card-relations-tools` - [ ] `columns/policies-and-wip` - [ ] `mcp/policy-aware-actions` - [ ] `web/blocked-and-policy-cues` - [ ] `projection/manual-kan-drift-detection` ### Wave 3: Operations Hardening - [ ] `ai-inbox-conventions-hardening` - [ ] `mcp/ops-smoke-and-health` - [ ] `ops/openclaw-mcporter-registration` - [ ] `web/machine-activity-audit-view` ### Wave 4: Analytics Foundation - [ ] `activity/backfill-created-list` - [ ] `analytics/event-foundation-v0` - [ ] `analytics/flow-metrics-v0` - [ ] `web/flow-health-lite` ### Wave 5: Swarmheart / Leviathan - [ ] `swarmheart/leviathan-projection-contract` - [ ] `swarmheart/leviathan-readonly-preview` - [ ] `swarmheart/leviathan-write-projection` ## Owner Checkpoint Template ```markdown ## Owner Checkpoint @ turn N **Topic so far**: ... **What we agreed**: ... **Where we disagree**: ... **Risk class**: runtime / exposure / process / product **Decision needed**: yes/no, specifically what **Recommended next move**: one option, named risks — codex ``` ## Definition Of Done Kan-ductor is role-ready when Iskra can safely create, move, comment, propose, and explain board changes; Piotr can inspect and revoke machine identities; agent actions are visibly attributed and audited; cards express blockers; columns express policies/WIP; drift is detected; flow analytics can be computed; and Swarmheart can project Leviathan state without making Kan-ductor canonical memory.
Author
Collaborator

Backlog issue map

Wave 1: Maintainer Foundation

  1. #3 ops/forgejo-first-ci-and-release
  2. #4 agent/machine-identities
  3. #5 agent/admin-identity-ui-or-cli
  4. #6 activity/explain-what-changed-today
  5. #7 activity/agent-visible-attribution
  6. #8 agent/proposal-review-api-complete
  7. #9 web/agent-proposals-inbox

Wave 2: Board Maturity

  1. #10 cards/lightweight-relations
  2. #11 mcp/card-relations-tools
  3. #12 columns/policies-and-wip
  4. #13 mcp/policy-aware-actions
  5. #14 web/blocked-and-policy-cues
  6. #15 projection/manual-kan-drift-detection

Wave 3: Operations Hardening

  1. #16 ai-inbox-conventions-hardening
  2. #17 mcp/ops-smoke-and-health
  3. #18 ops/openclaw-mcporter-registration
  4. #19 web/machine-activity-audit-view

Wave 4: Analytics Foundation

  1. #20 activity/backfill-created-list
  2. #21 analytics/event-foundation-v0
  3. #22 analytics/flow-metrics-v0
  4. #23 web/flow-health-lite

Wave 5: Swarmheart / Leviathan

  1. #24 swarmheart/leviathan-projection-contract
  2. #25 swarmheart/leviathan-readonly-preview
  3. #26 swarmheart/leviathan-write-projection

Rule of engagement: each issue should become one focused PR unless implementation reality proves that a split is safer.

## Backlog issue map ### Wave 1: Maintainer Foundation 1. #3 `ops/forgejo-first-ci-and-release` 2. #4 `agent/machine-identities` 3. #5 `agent/admin-identity-ui-or-cli` 4. #6 `activity/explain-what-changed-today` 5. #7 `activity/agent-visible-attribution` 6. #8 `agent/proposal-review-api-complete` 7. #9 `web/agent-proposals-inbox` ### Wave 2: Board Maturity 8. #10 `cards/lightweight-relations` 9. #11 `mcp/card-relations-tools` 10. #12 `columns/policies-and-wip` 11. #13 `mcp/policy-aware-actions` 12. #14 `web/blocked-and-policy-cues` 13. #15 `projection/manual-kan-drift-detection` ### Wave 3: Operations Hardening 14. #16 `ai-inbox-conventions-hardening` 15. #17 `mcp/ops-smoke-and-health` 16. #18 `ops/openclaw-mcporter-registration` 17. #19 `web/machine-activity-audit-view` ### Wave 4: Analytics Foundation 18. #20 `activity/backfill-created-list` 19. #21 `analytics/event-foundation-v0` 20. #22 `analytics/flow-metrics-v0` 21. #23 `web/flow-health-lite` ### Wave 5: Swarmheart / Leviathan 22. #24 `swarmheart/leviathan-projection-contract` 23. #25 `swarmheart/leviathan-readonly-preview` 24. #26 `swarmheart/leviathan-write-projection` Rule of engagement: each issue should become one focused PR unless implementation reality proves that a split is safer.

Stabilization branch update from Codex/Godzilla.

Local branch: codex/kan-ductor-stabilization from current origin/main (d246544).

Implemented in working tree:

  • BMAD durable context: _bmad-output/project-context.md.
  • P0 projection gates: projection:write, projection:override_warnings, KAN_PROJECTION_APPLY_ENABLED=false default, blocking warnings skip writes unless explicitly overridden.
  • Audit redaction: default human audit read is summarized/redacted; raw read requires includeRaw=true + workspace:manage.
  • Truth layer: action audit results carry activityPublicId; recent activity and drift prefer exact lineage, old time-window fallback is low confidence.
  • Recent activity recap summary: actorKind filtering, Europe/Warsaw today support, move/source summary.
  • MCP health split: /live, /ready, /health readiness compatibility.
  • Machine identity maintainer CLI: dry-run-first create/inspect/rotate/pause/revoke.
  • Relation activity types and policy-required move override plumbing.

Verified locally:

  • pnpm --filter @kan/api typecheck
  • pnpm --filter @kan/db typecheck
  • pnpm --filter @kan/mcp typecheck
  • pnpm --filter @kan/api test -- agent.test.ts
  • pnpm --filter @kan/mcp test -- health.test.ts
  • focused eslint on touched API/DB files
  • node --check scripts/kan-machine-identity-admin.mjs

Not production-run:

  • no deploy
  • no production migration
  • no token/secret issuance or rotation
Stabilization branch update from Codex/Godzilla. Local branch: `codex/kan-ductor-stabilization` from current `origin/main` (`d246544`). Implemented in working tree: - BMAD durable context: `_bmad-output/project-context.md`. - P0 projection gates: `projection:write`, `projection:override_warnings`, `KAN_PROJECTION_APPLY_ENABLED=false` default, blocking warnings skip writes unless explicitly overridden. - Audit redaction: default human audit read is summarized/redacted; raw read requires `includeRaw=true` + `workspace:manage`. - Truth layer: action audit results carry `activityPublicId`; recent activity and drift prefer exact lineage, old time-window fallback is low confidence. - Recent activity recap summary: actorKind filtering, Europe/Warsaw today support, move/source summary. - MCP health split: `/live`, `/ready`, `/health` readiness compatibility. - Machine identity maintainer CLI: dry-run-first create/inspect/rotate/pause/revoke. - Relation activity types and policy-required move override plumbing. Verified locally: - `pnpm --filter @kan/api typecheck` - `pnpm --filter @kan/db typecheck` - `pnpm --filter @kan/mcp typecheck` - `pnpm --filter @kan/api test -- agent.test.ts` - `pnpm --filter @kan/mcp test -- health.test.ts` - focused eslint on touched API/DB files - `node --check scripts/kan-machine-identity-admin.mjs` Not production-run: - no deploy - no production migration - no token/secret issuance or rotation

Draft PR created for the stabilization slice: #60

Status: WIP/draft. No production deploy, no production migration, no token changes. Next gate: 3+3 review before merge.

Draft PR created for the stabilization slice: https://git.pdurlej.com/pdurlej/kan-ductor/pulls/60 Status: WIP/draft. No production deploy, no production migration, no token changes. Next gate: 3+3 review before merge.
Author
Collaborator

Identity correction: canonical Codex-owned draft PR is now #61

The earlier #60 was created through the GLM Forgejo identity and has been closed as superseded. This follows agent-souls identity discipline: Codex work should be posted by Forgejo user codex (id 4).

Identity correction: canonical Codex-owned draft PR is now https://git.pdurlej.com/pdurlej/kan-ductor/pulls/61 The earlier #60 was created through the GLM Forgejo identity and has been closed as superseded. This follows agent-souls identity discipline: Codex work should be posted by Forgejo user `codex` (id 4).
Author
Collaborator

Gemini 3.5 Flash work lane created — 2026-05-28

Created small, bounded issues for parallel scouting/tests/docs across all Kan-ductor waves. These are intentionally not production deploy, secret, or migration tasks.

Ranges:

  • Wave 0 grounding: #95-#97
  • Wave 1 maintainer foundation: #98-#106
  • Wave 2 board maturity: #107-#114
  • Wave 3 ops hardening: #115-#119
  • Wave 4 analytics foundation: #120-#124
  • Wave 5 Leviathan: #125-#129
  • Cockpit read-model follow-ups: #130-#134

Default rule for Gemini lane: small focused PR or scouting report, no prod deploy/restart, no secret/token changes, no production migrations, no trust-boundary widening.

— codex

## Gemini 3.5 Flash work lane created — 2026-05-28 Created small, bounded issues for parallel scouting/tests/docs across all Kan-ductor waves. These are intentionally not production deploy, secret, or migration tasks. Ranges: - Wave 0 grounding: #95-#97 - Wave 1 maintainer foundation: #98-#106 - Wave 2 board maturity: #107-#114 - Wave 3 ops hardening: #115-#119 - Wave 4 analytics foundation: #120-#124 - Wave 5 Leviathan: #125-#129 - Cockpit read-model follow-ups: #130-#134 Default rule for Gemini lane: small focused PR or scouting report, no prod deploy/restart, no secret/token changes, no production migrations, no trust-boundary widening. — codex
Collaborator

{
"confidence": 5,
"effort_hint": "large",
"escalation": {
"kind": "operator",
"reason": "Maturity-wave coordination includes owner-gated risk boundaries and merge authority."
},
"evidence_refs": [
{
"note": "Issue is the meta coordination thread for Kan-ductor maturity waves.",
"type": "forgejo",
"value": "issue-title-body-labels-and-target-snapshot"
},
{
"note": "Body frames a 24-PR maturity program for Kan-ductor as an operational board for Piotr and Iskra.",
"type": "forgejo",
"value": "issue-body-summary"
},
{
"note": "Rules define coordination ledger, atomic PR mapping, agent roles, arbitration, and owner approval boundaries.",
"type": "forgejo",
"value": "issue-body-rules"
}
],
"impact": 5,
"judge_actor": {
"name": "iskra",
"runtime": "openclaw"
},
"judged_at": "2026-06-08T01:12:00Z",
"labels_to_apply": [
"judge/p1",
"judge/operator-needed"
],
"piotr_fit": "high",
"priority": "p1",
"rationale_summary": "This is P1 operator-shaped coordination because it governs Kan-ductor's maturity program and the approval boundaries around production-risk work.",
"reach": 5,
"recommended_next_action": "operator_needed",
"rerun_reason": "no_prior_judgment",
"schema": "openclaw.judge.v0",
"target": {
"kind": "issue",
"number": 2,
"repo": "pdurlej/kan-ductor"
},
"target_snapshot": {
"body_hash": "sha256:09a9fff2544911220c5c780af3cc8c860a0a1c3ca53fdcb013a95e9c2b7f8e9f",
"commit_count": null,
"evidence_hash": "sha256:18cf6a7e3ad9471e670c594c603425758a519b58703584ab3aadc2beff315631",
"head_sha": null,
"labels": [],
"labels_hash": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"state": "open",
"title_hash": "sha256:4c50cf03fbafee5be55a679485c0f6e5794974ba3d52c24688ce08f4fbe308c0",
"updated_at": "2026-05-28T01:21:32+02:00"
},
"top_caveat": "Keep implementation split into atomic issues so the meta thread does not become an unreviewable bundle."
}

<!-- openclaw.judge.v0 --> { "confidence": 5, "effort_hint": "large", "escalation": { "kind": "operator", "reason": "Maturity-wave coordination includes owner-gated risk boundaries and merge authority." }, "evidence_refs": [ { "note": "Issue is the meta coordination thread for Kan-ductor maturity waves.", "type": "forgejo", "value": "issue-title-body-labels-and-target-snapshot" }, { "note": "Body frames a 24-PR maturity program for Kan-ductor as an operational board for Piotr and Iskra.", "type": "forgejo", "value": "issue-body-summary" }, { "note": "Rules define coordination ledger, atomic PR mapping, agent roles, arbitration, and owner approval boundaries.", "type": "forgejo", "value": "issue-body-rules" } ], "impact": 5, "judge_actor": { "name": "iskra", "runtime": "openclaw" }, "judged_at": "2026-06-08T01:12:00Z", "labels_to_apply": [ "judge/p1", "judge/operator-needed" ], "piotr_fit": "high", "priority": "p1", "rationale_summary": "This is P1 operator-shaped coordination because it governs Kan-ductor's maturity program and the approval boundaries around production-risk work.", "reach": 5, "recommended_next_action": "operator_needed", "rerun_reason": "no_prior_judgment", "schema": "openclaw.judge.v0", "target": { "kind": "issue", "number": 2, "repo": "pdurlej/kan-ductor" }, "target_snapshot": { "body_hash": "sha256:09a9fff2544911220c5c780af3cc8c860a0a1c3ca53fdcb013a95e9c2b7f8e9f", "commit_count": null, "evidence_hash": "sha256:18cf6a7e3ad9471e670c594c603425758a519b58703584ab3aadc2beff315631", "head_sha": null, "labels": [], "labels_hash": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "state": "open", "title_hash": "sha256:4c50cf03fbafee5be55a679485c0f6e5794974ba3d52c24688ce08f4fbe308c0", "updated_at": "2026-05-28T01:21:32+02:00" }, "top_caveat": "Keep implementation split into atomic issues so the meta thread does not become an unreviewable bundle." } <!-- /openclaw.judge.v0 -->
Sign in to join this conversation.
No labels
3plus3-followup
agent/claude-code
agent/codex
agent/hermes
agent/iskra
agent/ollama
agent/patchwarden
analytics
api
cockpit
dependency/blocked
dependency/blocks-others
dependency/cross-repo
dependency/needs-confirmation
docs
domain:agents
domain:ci
domain:docs
domain:forgejo
domain:infra
domain:memory
domain:runtime
domain:signal
domain:ux
flow/architecture
flow/blocked
flow/deployed
flow/done
flow/implementation
flow/intake
flow/maintained
flow/observed
flow/ready
flow/refining
flow/retired
flow/review
gemini-flash
judge/codex-candidate
judge/hermes-candidate
judge/low-confidence
judge/needs-refinement
judge/operator-needed
judge/p0
judge/p1
judge/p2
judge/p3
judge/park
judge/patchwarden-candidate
judge/stale-priority
kind/adr
kind/bug
kind/chore
kind/feature
kind/infra
kind/ops
kind/refactor
kind/research
leviathan
mcp
merge/auto
merge/manual
merge/manual-dependency-conflict
merge/manual-failing-tests
merge/manual-merge-conflict
merge/manual-missing-review
merge/manual-operator-preference
merge/manual-red-zone
merge/manual-security-sensitive
merge/manual-unclear-scope
merge/manual-unknown
mode:operator-only
mode:patchwarden-iskra-approved
mode:safe-auto
observed/erroring
observed/needs-followup
observed/pending
observed/retire-candidate
observed/unused
observed/used
ops
priority:p0
priority:p1
priority:p2
priority:p3
review:claude-reviewed
review:codex-reviewed
review:dziadek-reviewed
review:needs-human
safety
safety:external-write
safety:no-prod-mutation
safety:prod-impact
safety:secret-touch
scout
security
size/large
size/medium
size/small
size/tiny
size/unknown
small-task
source/adr
source/agent-generated
source/manual
source/operator-chat
source/voice-note
status:blocked
status:codex-ready
status:merged:pending-evidence
status:needs-evidence
status:operator-needed
status:parked
tests
tier:0-platform-substrate
tier:1-iskra-value-layer
tier:2-tools-products-modules
type:bug
type:chore
type:docs
type:feat
type:policy
type:research
ui
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pdurlej/kan-ductor#2
No description provided.