release(v4.8.9): tests no longer take the checkout's loop lock - archive the review reports and bump the lockstep version
Merge-workspace review loop (--all-reviewer): round 1 (@a93c9bf) 4/4
PASS. Full suite at a93c9bf on macOS / Python 3.9 / herdr 0.9.3 with
WORKSPACE_ROOT set to an empty sentinel: 1752 passed / 0 failed / 38
skipped; the sentinel stayed empty, the review worktree had no .mam, and
the main checkout's shim was not touched.
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
a93c9bf292
commit
ca688dcef4
24 files changed
+468
-25
No files matched your search
+23
-10
@@ -6,7 +6,7 @@
|
||||
|
||||
## 📌 현재 버전 개요 (Current Release)
|
||||
|
||||
- **프레임워크 버전**: `v4.8.8`
|
||||
- **프레임워크 버전**: `v4.8.9`
|
||||
- **최신 릴리스 일시**: 2026-10-09 (KST)
|
||||
- **기준 브랜치**: `main`
|
||||
- **핵심 아키텍처**:
|
||||
@@ -24,23 +24,36 @@
|
||||
|
||||
## 🧭 스킬 패키지 버전 매트릭스 (Skills Version Matrix)
|
||||
|
||||
모든 8개 스킬은 YAML frontmatter 메타데이터(`author`, `version`, `platforms`, `environments`) 표준화를 통해 `v4.8.8`로 동기화되어 배포됩니다.
|
||||
모든 8개 스킬은 YAML frontmatter 메타데이터(`author`, `version`, `platforms`, `environments`) 표준화를 통해 `v4.8.9`로 동기화되어 배포됩니다.
|
||||
|
||||
| 스킬명 | 버전 | 역할 및 주요 책임 | 상태 |
|
||||
| :--- | :---: | :--- | :---: |
|
||||
| **`multi-agent-mux-create`** | `4.8.8` | 에이전트 세션 신규 생성 및 Herdr 컨테이너 격리 스폰 | ✅ 배포 |
|
||||
| **`multi-agent-mux-stop`** | `4.8.8` | 대화 UUID 원자적 캡처 및 세션 안전 종료 (Graceful Stop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-resume`** | `4.8.8` | 온디스크 대화 컨텍스트 기반 Tier-1 초고속 세션 복원 | ✅ 배포 |
|
||||
| **`multi-agent-mux-status`** | `4.8.8` | 실시간 Herdr 세션 및 레지스트리 드리프트 스냅샷 조회 | ✅ 배포 |
|
||||
| **`multi-agent-mux-monitor`** | `4.8.8` | YAML ↔ 런타임 상태 간 자율 조정자 (Reconciler Loop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-delegate-job`** | `4.8.8` | MQTT 이벤트 채널 기반 비동기 단위 작업 위임 | ✅ 배포 |
|
||||
| **`multi-agent-mux-loop`** | `4.8.8` | Planner-Creator-Reviewer 3자 자율 계획·실행·피어리뷰 루프 | ✅ 배포 |
|
||||
| **`multi-agent-mux-orc-onboard`** | `4.8.8` | 오케스트레이터 UUID 격리 등록 및 서브 세션 오염 방지 | ✅ 배포 |
|
||||
| **`multi-agent-mux-create`** | `4.8.9` | 에이전트 세션 신규 생성 및 Herdr 컨테이너 격리 스폰 | ✅ 배포 |
|
||||
| **`multi-agent-mux-stop`** | `4.8.9` | 대화 UUID 원자적 캡처 및 세션 안전 종료 (Graceful Stop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-resume`** | `4.8.9` | 온디스크 대화 컨텍스트 기반 Tier-1 초고속 세션 복원 | ✅ 배포 |
|
||||
| **`multi-agent-mux-status`** | `4.8.9` | 실시간 Herdr 세션 및 레지스트리 드리프트 스냅샷 조회 | ✅ 배포 |
|
||||
| **`multi-agent-mux-monitor`** | `4.8.9` | YAML ↔ 런타임 상태 간 자율 조정자 (Reconciler Loop) | ✅ 배포 |
|
||||
| **`multi-agent-mux-delegate-job`** | `4.8.9` | MQTT 이벤트 채널 기반 비동기 단위 작업 위임 | ✅ 배포 |
|
||||
| **`multi-agent-mux-loop`** | `4.8.9` | Planner-Creator-Reviewer 3자 자율 계획·실행·피어리뷰 루프 | ✅ 배포 |
|
||||
| **`multi-agent-mux-orc-onboard`** | `4.8.9` | 오케스트레이터 UUID 격리 등록 및 서브 세션 오염 방지 | ✅ 배포 |
|
||||
|
||||
---
|
||||
|
||||
## 📋 버전별 상세 변경 내역 (Changelog)
|
||||
|
||||
### 🚀 `v4.8.9` — 테스트가 체크아웃의 실제 루프 잠금을 잡지 않는다 (2026-10-09)
|
||||
|
||||
> **패치 (PATCH Release, 테스트 전용)**: v4.8.8 센티널 실행 뒤 리뷰 워크트리에 빈 `.mam/` 이 남은 원인. 제품 코드(`.agents/skills`)는 버전 줄 외에 바뀌지 않았다.
|
||||
|
||||
#### 🌟 주요 개선 사항
|
||||
1. **원인**: `tests/test_o3_scoped_guard.py` 의 `test_b13_reexec_preserves_original_argv`·`test_b13_no_freeze_switch_disables_reexec` 는 체크아웃의 `run_loop.sh` 를 `--creator` 와 함께 실행해 인자 해석을 지나 `mam_acquire_loop_lock` 까지 간다. 잠금 위치 기본값은 `$MAM_REAL_ROOT/.mam/loop-guard-active` 이고 `MAM_REAL_ROOT` 는 스크립트 자신의 체크아웃이라 `WORKSPACE_ROOT` 를 따르지 않는다. 세션이 없어 곧 끝나며 marker 는 지우지만 `.mam/` 은 남는다. 본 체크아웃에서는 그 순간 실제 루프의 잠금을 잡았다 놓는다(실제 루프가 거부되거나 테스트가 거부됨).
|
||||
2. **수정**: 두 테스트가 `MAM_LOOP_MARKER` 를 자기 `tmp_path` 아래로 둔다. `run_loop.sh` 를 쓰는 16 개 모듈을 테스트마다 체크아웃의 새 `.mam` 을 감시하며 훑었고, 나머지는 이미 marker 를 지정하거나 잠금 전에 끝나거나(`--help`, 인자 오류) 복사본 트리를 실행한다. 잠금 동작을 시험하는 테스트(`test_o2_race_free_lock` 등)는 그대로다.
|
||||
|
||||
#### ✅ 품질 검증
|
||||
- **회귀 테스트**: `tests/test_loop_marker_isolation.py` L1 — 체크아웃의 `run_loop.sh` 로 잠금까지 가는 테스트들을 체크아웃 복사본에서 돌려 `.mam` 이 생기지 않아야 한다. v4.8.8 의 W1(`tests/test_issue17_workspace_root_isolation.py`)은 파일만 보아 빈 잠금 디렉터리를 놓쳤으므로 이제 `.mam` 자체가 없어야 한다. 97c2946 에서 둘 다 실패.
|
||||
- **리뷰 (병합 워크스페이스, 루프 `--all-reviewer`)**: 1회차(@a93c9bf) **4/4 PASS**. 리포트와 identity 사이드카는 `.agents/reports/<session>/`.
|
||||
- **전체 스위트 (병합 워크스페이스, macOS·Python 3.9·herdr 0.9.3, MQTT 환경변수 없이, `WORKSPACE_ROOT` = 빈 센티널)**: a93c9bf **1752 passed / 0 failed / 38 skipped**(73 분). 실행 뒤 센티널은 비었고, 리뷰 워크트리에 `.mam/` 이 없었고, 본 체크아웃의 `.mam/shim/herdr` 수정 시각은 그대로였다.
|
||||
|
||||
### 🚀 `v4.8.8` — Issue #17 후속: lib.sh 를 source 하는 테스트가 상속된 `WORKSPACE_ROOT` 에 쓰지 않는다 (2026-10-09)
|
||||
|
||||
> **패치 (PATCH Release, 테스트 전용)**: v4.8.7 리뷰(claude 비차단)가 남긴 후속. 제품 코드(`.agents/skills`)는 바뀌지 않았다. lib.sh 는 source 될 때마다 `$WORKSPACE_ROOT/.mam/shim/herdr` 를 다시 쓰는데(`_init_herdr_isolation`), 셸 환경을 그대로 물려받는 테스트는 그 값이 가리키는 실제 워크스페이스(에이전트 pane 에서는 그 pane 의 워크스페이스, PR #51 리뷰 때는 다른 워크스페이스)의 shim 을 덮어썼다.
|
||||
|
||||
Reference in new issue
Block a user