release(v4.13.0): worktree creator onboards by default; create --no-onboard warns for post-discovered-id agents (Issue #68) - archive the review reports, bump the lockstep version
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VCgu9Fa9iT7TbJUSzdq4Ff
This commit is contained in:
1 parent
a7bf07bb1c
commit
a582934f6a
25 files changed
+529
-28
No files matched your search
+32
-12
@@ -6,8 +6,8 @@
|
||||
|
||||
## 📌 현재 버전 개요 (Current Release)
|
||||
|
||||
- **프레임워크 버전**: `v4.12.0`
|
||||
- **최신 릴리스 일시**: 2026-10-28 (KST)
|
||||
- **프레임워크 버전**: `v4.13.0`
|
||||
- **최신 릴리스 일시**: 2026-10-29 (KST)
|
||||
- **기준 브랜치**: `main`
|
||||
- **핵심 아키텍처**:
|
||||
- **Terminal 상태 단방향 불변성 (`engine.py`, Issue #6 Phase 1)**: `completed`, `error`, `cancelled` 터미널 상태 진입 후 후속 이벤트나 업데이트에 의한 덮어쓰기를 엄격히 차단(Terminal Immutability). `registry.py close` 서브커맨드 및 fail-closed 조기 종료 도입.
|
||||
@@ -24,24 +24,44 @@
|
||||
|
||||
## 🧭 스킬 패키지 버전 매트릭스 (Skills Version Matrix)
|
||||
|
||||
모든 9개 스킬은 YAML frontmatter 메타데이터(`author`, `version`, `platforms`, `environments`) 표준화를 통해 `v4.12.0`로 동기화되어 배포됩니다.
|
||||
모든 9개 스킬은 YAML frontmatter 메타데이터(`author`, `version`, `platforms`, `environments`) 표준화를 통해 `v4.13.0`로 동기화되어 배포됩니다.
|
||||
|
||||
| 스킬명 | 버전 | 역할 및 주요 책임 | 상태 |
|
||||
| :--- | :---: | :--- | :---: |
|
||||
| **`multi-agent-mux-create`** | `4.12.0` | 에이전트 세션 신규 생성 및 Herdr 컨테이너 격리 스폰 | ✅ 배포 |
|
||||
| **`multi-agent-mux-stop`** | `4.12.0` | 대화 UUID 원자적 캡처 및 세션 안전 종료 (Graceful Stop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-resume`** | `4.12.0` | 온디스크 대화 컨텍스트 기반 Tier-1 초고속 세션 복원 | ✅ 배포 |
|
||||
| **`multi-agent-mux-status`** | `4.12.0` | 실시간 Herdr 세션 및 레지스트리 드리프트 스냅샷 조회 | ✅ 배포 |
|
||||
| **`multi-agent-mux-monitor`** | `4.12.0` | YAML ↔ 런타임 상태 간 자율 조정자 (Reconciler Loop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-delegate-job`** | `4.12.0` | MQTT 이벤트 채널 기반 비동기 단위 작업 위임 | ✅ 배포 |
|
||||
| **`multi-agent-mux-loop`** | `4.12.0` | Planner-Creator-Reviewer 3자 자율 계획·실행·피어리뷰 루프 | ✅ 배포 |
|
||||
| **`multi-agent-mux-orc-onboard`** | `4.12.0` | 오케스트레이터 UUID 격리 등록 및 서브 세션 오염 방지 | ✅ 배포 |
|
||||
| **`multi-agent-mux-update`** | `4.12.0` | 설치된 작업 공간의 제자리 업데이트·되돌리기와 업데이트 중 입장 차단 | ✅ 배포 |
|
||||
| **`multi-agent-mux-create`** | `4.13.0` | 에이전트 세션 신규 생성 및 Herdr 컨테이너 격리 스폰 | ✅ 배포 |
|
||||
| **`multi-agent-mux-stop`** | `4.13.0` | 대화 UUID 원자적 캡처 및 세션 안전 종료 (Graceful Stop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-resume`** | `4.13.0` | 온디스크 대화 컨텍스트 기반 Tier-1 초고속 세션 복원 | ✅ 배포 |
|
||||
| **`multi-agent-mux-status`** | `4.13.0` | 실시간 Herdr 세션 및 레지스트리 드리프트 스냅샷 조회 | ✅ 배포 |
|
||||
| **`multi-agent-mux-monitor`** | `4.13.0` | YAML ↔ 런타임 상태 간 자율 조정자 (Reconciler Loop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-delegate-job`** | `4.13.0` | MQTT 이벤트 채널 기반 비동기 단위 작업 위임 | ✅ 배포 |
|
||||
| **`multi-agent-mux-loop`** | `4.13.0` | Planner-Creator-Reviewer 3자 자율 계획·실행·피어리뷰 루프 | ✅ 배포 |
|
||||
| **`multi-agent-mux-orc-onboard`** | `4.13.0` | 오케스트레이터 UUID 격리 등록 및 서브 세션 오염 방지 | ✅ 배포 |
|
||||
| **`multi-agent-mux-update`** | `4.13.0` | 설치된 작업 공간의 제자리 업데이트·되돌리기와 업데이트 중 입장 차단 | ✅ 배포 |
|
||||
|
||||
---
|
||||
|
||||
## 📋 버전별 상세 변경 내역 (Changelog)
|
||||
|
||||
### 🚀 `v4.13.0` — worktree creator 도 기본으로 온보딩하고, create 의 --no-onboard 는 ID 가 나중에 생기는 에이전트에 경고한다 (Issue #68) (2026-10-29)
|
||||
|
||||
> **마이너 (MINOR Release)**: `worktree_prepare.sh --creator-agent` 가 온보딩 없이 creator 를 만들어, agy·codex·hermes·opencode 는 첫 대화 전까지 레지스트리에 대화 ID 가 없었다. 이제 worktree creator 도 기본으로 온보딩한다. create 의 `--no-onboard` 는 남기고, ID 가 첫 턴 뒤에야 생기는 에이전트에 쓰면 경고한다. 공개 스크립트의 기본 동작이 바뀌어 MINOR 로 올린다. PR #79.
|
||||
|
||||
#### ⚠️ 호환성
|
||||
- `worktree_prepare.sh --creator-agent` 가 기본으로 온보딩한다. 온보딩이 끝날 때까지 기다리므로(`MAM_ONBOARD_WAIT_S`, 기본 600 s) 전보다 오래 걸리고, create 의 종료 코드 44(온보딩 `error`)·45(시간 초과)가 나올 수 있다. 건너뛰려면 `--no-onboard` 를 준다. `--onboard` 는 기본과 같은 뜻으로 계속 받는다. 둘 다 주면 마지막 것이 이긴다.
|
||||
- create 에 `--no-onboard` 를 agy·codex·hermes·opencode 와 함께 주면 stderr 에 경고 한 줄이 나온다. 종료 코드와 레지스트리 행은 바뀌지 않는다. claude·grok 에는 나오지 않는다.
|
||||
|
||||
#### 🌟 주요 개선 사항
|
||||
1. **경고 (`create_session.sh`, `lib_py/agents/__main__.py`)**: `lib_py.agents facts` 가 어댑터의 `id_lifecycle` 을 `MAM_ID_POST_DISCOVERED` 로 내보내고, create 는 이 값으로 판정한다(셸에 에이전트 목록을 두지 않는다). 첫 턴 전까지 ID 가 레지스트리에 없고, 같은 폴더에 같은 종류를 또 만들면 그 create 가 기다린다(#63, `MAM_ID_ORDER_WAIT_S`)는 내용이다. spawn 전에 출력하므로 `--dry-run` 에서도, 뒤에서 create 가 실패해도 보인다.
|
||||
2. **worktree creator (`worktree_prepare.sh`)**: 기본으로 create 에 `--onboard` 를 넘긴다. 새 `--no-onboard` 는 create 에 그대로 넘긴다. 사용법과 종료 코드 주석을 고쳤다.
|
||||
3. **문서**: create `SKILL.md` 의 옵션 표 한 줄과 worktree 절(시놉시스, `--creator-agent` 설명, 종료 코드).
|
||||
|
||||
#### ✅ 품질 검증
|
||||
- **회귀**: `tests/test_issue68_onboard_default.py`(25개). base(v4.12.0)에서 20개가 실패한다. 나머지 5개는 base 에서도 맞아야 하는 경우다(claude·grok 은 경고 없음, `--onboard` 전달). 기본이 온보딩하지 않는 것을 전제로 하던 worktree 테스트 호출 3곳에 `--no-onboard` 를 붙였다.
|
||||
- **리뷰 (`--all-reviewer`, 작성자 PR 의 리뷰 전용 루프)**: 작성자 루프 1회차 NOT PASS(`test_issue21_acceptance.py` 의 암묵적 no-onboard 호출 2곳), 2회차 4/4 PASS. 병합 전 리뷰 전용 루프(@3b81f99) 1회차 **4/4 PASS**. 리뷰어들이 `SKILL.md` 의 설명을 코드와 줄 단위로 대조했다. 그 지적으로 `SKILL.md` 의 "막힌다" 를 "기다린다" 로 고치고 쓰이지 않는 import 를 지웠다(@a7bf07b). 리포트는 `.agents/reports/<session>/` 에 있다.
|
||||
- **전체 스위트 (macOS, Python 3.9.6, @a7bf07b)**: 2293 passed, 56 skipped, 실패 0 (102분). 실제 `~/.claude`·`/private/tmp/claude-<uid>`·herdr 서버 pane 목록·opencode 의 data·state·config·본 체크아웃의 `.mam` 에 이 실행이 남긴 것은 없었고, 본 체크아웃의 모니터는 그대로 떠 있었다.
|
||||
- **작성자 확인 (Linux, @7cf63f4)**: 2327 passed, 20 skipped, 2 failed. 하나는 이번 변경의 분류 누락이었고 3b81f99 에서 고쳤다. 다른 하나(`test_issue34_job_tree.py::test_t5b_…[True]`)는 단독 실행에서 head·base 모두 통과했다.
|
||||
- **알려진 비차단**: `--no-onboard --submit-job` 을 함께 주면 제출한 잡이 첫 턴이 되는데도 경고가 나온다(결정 3 의 조건 그대로). `worktree_prepare.sh --path ../<상대 경로>` 가 부모 폴더가 없을 때 "제어 루트 안" 으로 거부되는 문제는 별도 버그다.
|
||||
|
||||
### 🚀 `v4.12.0` — update 스킬로 제자리 업데이트하고, 업데이트 중에는 세션·잡·루프의 시작을 막는다 (Issue #72) (2026-10-28)
|
||||
|
||||
> **마이너 (MINOR Release)**: 설치된 작업 공간의 업데이트를 `.mam_deploy/update.sh` 대신 새 `multi-agent-mux-update` 스킬이 한다. 업데이트는 실행 중인 세션·열린 잡·루프가 있으면 거부하고, 모니터를 멈췄다가 다시 띄우며, 설치가 실패하면 되돌린다. 업데이트 중에는 create·resume·run_loop·delegate submit·stop·orc-onboard 가 거부한다. resume 이 모니터 데몬을 띄운다. 공개 진입점(`.mam_deploy/update.sh`)이 없어지고 기존 명령의 동작(업데이트 중 거부)이 늘어 MINOR 로 올린다. PR #75.
|
||||
|
||||
Reference in new issue
Block a user