# 📋 Cross-Code Review Report: P2-2 (C-3a + C-4 Legacy Code Cleanup)

- **Job ID**: `34b928df`
- **Reviewer**: cline (session: herdr:canary-projects-multi-agent-mux-creator-cline)
- **Role**: Reviewer
- **Review Subject**: P2-2 implementation — C-3a (4 isolation stub removal) + C-4 (3 dead symbol removal)
- **Base Commit**: `5e519e2` (HEAD)
- **Working Tree**: 7 modified files (uncommitted)
- **Report Path**: `.mam/jobs/34b928df/cline-reports/report-final.md`

---

## 1. Executive Summary

The P2-2 implementation is a **clean, surgical legacy code cleanup** that precisely matches the task specification. All 4 isolation stubs (C-3a) and all 3 dead symbols (C-4) were removed with zero collateral damage. The C-3b boundary (`isolation.root` consumers) was respected — no touched lines. A thoughtful regression guard test (`test_create_session_legacy_isolate_flags_noop`) was added to replace the 4 removed vacuous tests, pinning the `--isolate`/`--no-isolate` no-op contract against future arg-parser regressions.

**No lint, operability, or loss issues found.** Documentation (IMPROVEMENTS.md, LOG.md) updated with accurate counts and descriptions.

---

## 2. Scope — Files Changed (7 files, +46/-94 lines)

| File | Change | Lines |
|---|---|---|
| `.agents/skills/lib.sh` | Removed 4 stubs + `_REAL_HERDR_PATH` assignment/export; updated comment | 28 changed |
| `.agents/skills/multi-agent-mux-create/scripts/create_session.sh` | Removed `ISOLATE=1` | 1 removed |
| `.agents/skills/multi-agent-mux-delegate-job/scripts/registry.py` | Removed `TERMINAL_STATUSES` | 1 removed |
| `tests/test_tier1_unit.py` | Removed 3 vacuous tests, added 1 regression guard, synced header | 47 changed |
| `tests/test_tier2_component.py` | Removed 1 vacuous test | 10 removed |
| `IMPROVEMENTS.md` | C-3a/C-4 completion, counts updated (9→8 open, 16→17 done) | 39 changed |
| `LOG.md` | P2-2 session entry added | 14 added |

---

## 3. C-3a Verification — 4 Isolation Stub Removal

### 3.1 Stubs Removed ✅
All 4 empty stubs removed from `lib.sh` (was at lines 1369-1385, now gone):
- `provision_isolation()` — was `printf ''` (no-op)
- `isolation_lever()` — was `echo "none"` for all agents (no consumer read the output)
- `isolation_env_prefix()` — was `:` (true no-op)
- `isolation_cmd_args()` — was `:` (true no-op)

**Orphan check**: `grep -rn` across `.agents/`, `deploy/`, `tests/` for all 4 function names returns **zero production-code references** (only historical reports in `.mam/` and the new explanatory comment in `lib.sh:1364-1368`). ✅

### 3.2 Comment Block Updated ✅
The old "Stubbed isolation functions kept for backward compatibility" comment was replaced with an accurate removal record that explicitly names the C-3b boundary:

```
# The backward-compat stubs (provision_isolation / isolation_lever /
# isolation_env_prefix / isolation_cmd_args) were removed in P2-2 (C-3a);
# they had zero production callers. The `isolation.root` row field is still
# consumed (C-3b) — see verify_session_uuid / find_workspace_uuid /
# mam_session_iso_root / stop_session.sh purge guard.
```

All 4 referenced C-3b consumers confirmed present in live code:
- `verify_session_uuid` — `lib.sh:1260` (via Python import) ✅
- `find_workspace_uuid` — `lib.sh:1331` ✅
- `mam_session_iso_root` — `lib.sh:1103` ✅
- `stop_session.sh` purge guard — `stop_session.sh:62` (`--purge-conversation`) ✅

### 3.3 Tests Removed (4) ✅
- `test_create_isolation_lever` (test_tier1_unit.py) — vacuous: asserted `isolation_lever` returns "none"
- `test_create_isolation_env_prefix` (test_tier1_unit.py) — vacuous: asserted empty stdout
- `test_create_isolation_cmd_args` (test_tier1_unit.py) — vacuous: asserted empty stdout
- `test_comp_create_isolation_folder_setup` (test_tier2_component.py) — vacuous: asserted `provision_isolation` returns empty stdout

**Note on "5 tests" in brief**: The brief mentions "5 vacuous tests" but only 4 existed. The 5th was a non-existent test — the remaining `isolation` hits in `tests/` are all C-3b contract verifications (which must NOT be touched). This discrepancy was pre-acknowledged in the planner's Rev.2 document (§1.2). ✅

### 3.4 Regression Guard Added (1) ✅
New test `test_create_session_legacy_isolate_flags_noop` replaces the 4 removed vacuous tests with a meaningful contract: `--isolate` and `--no-isolate` must remain accepted no-op flags (rc=0, stderr notice, present in usage help). This prevents future arg-parser refactors from silently breaking legacy callers.

**Test verified**: `pytest tests/test_tier1_unit.py::test_create_session_legacy_isolate_flags_noop` → **PASSED** (0.12s) ✅

### 3.5 Section Header Sync ✅
`test_tier1_unit.py:31` header updated: `(7 Test Cases)` → `(5 Test Cases)`. Verified: 7 - 3 removed + 1 added = 5. ✅

---

## 4. C-4 Verification — 3 Dead Symbol Removal

### 4.1 `_REAL_HERDR_PATH` (lib.sh) ✅
- **Removed**: Lines 126-127 (`_REAL_HERDR_PATH="$real_path"` + `export _REAL_HERDR_PATH`)
- **Function invariant**: `_resolve_real_herdr_path()` (lib.sh:111-127) still returns the resolved path via **stdout** (`printf '%s\n' "$real_path"`) and **exit code** (`return 1` on not found). The removed global variable was a write-only side-effect — no consumer ever read `$_REAL_HERDR_PATH`.
- **`has_real_herdr()`** (lib.sh:129-131) calls `_resolve_real_herdr_path >/dev/null 2>&1` — uses exit code only, not the variable. ✅
- **Orphan check**: `grep -rn '_REAL_HERDR_PATH'` across `.agents/`, `deploy/`, `tests/` → zero production-code references (only historical reports). ✅
- **`_` prefix**: Denotes private/internal symbol. External consumers outside repo not searched, but `_resolve_real_herdr_path` is the public contract, not the variable.

### 4.2 `TERMINAL_STATUSES` (registry.py) ✅
- **Removed**: Line 38 (`TERMINAL_STATUSES = ("completed", "error", "cancelled")`)
- **`__all__` check**: `registry.py:175-178` — `TERMINAL_STATUSES` is **NOT** in `__all__`. `from registry import *` contract is invariant. ✅
- **`VALID_STATUSES`** (now line 38) — still present and used at lines 149-150. **Not touched**. ✅
- **Orphan check**: `grep -rn 'TERMINAL_STATUSES'` in registry.py → not found (exit code 1). Zero references in production code. ✅

### 4.3 `ISOLATE` (create_session.sh) ✅
- **Removed**: Line 57 (`ISOLATE=1`)
- **`set -euo pipefail`** at line 20 — if any code referenced `$ISOLATE` after removal, the script would fail with "unbound variable". No such reference exists. ✅
- **`--isolate`/`--no-isolate` arg parsing** (lines 70-71) — these are **separate no-op branches** that echo a notice to stderr and `shift`. They never set or read `$ISOLATE`. They remain untouched and functional. ✅
- **Usage help** (lines 42-43) — `--isolate` and `--no-isolate` documented as legacy no-op flags. Still present. ✅
- **Deploy scripts** (`deploy/install_mam.sh:326`, `deploy/install.sh:613`) — reference `--isolate` in example commands. Since `--isolate` is still accepted as a no-op, these examples still work correctly. ✅

### 4.4 `_HERDR_SHIM_DIR_PATTERN` NOT Touched ✅
Confirmed: `_HERDR_SHIM_DIR_PATTERN` (lib.sh:83) and `_HERDR_SKILLS_BIN_PATTERN` (lib.sh:84) are **not in the diff**. Both are still defined and used at lib.sh:105 (`_is_shim_path`). ✅

## 5. Syntax & Static Analysis

| Check | Command | Result |
|---|---|---|
| Shell syntax (lib.sh) | `bash -n .agents/skills/lib.sh` | ✅ SYNTAX OK |
| Shell syntax (create_session.sh) | `bash -n .../create_session.sh` | ✅ SYNTAX OK |
| Python AST (registry.py) | `python3 -c "import ast; ast.parse(...)"` | ✅ AST OK |
| `shellcheck` | Not installed in environment | ⚠️ Not available (same as prior jobs) |

---

## 6. Test Verification

| Check | Expected | Result |
|---|---|---|
| Collection count | 256 (259 → 256, net -3 = 4 removed - 1 added) | ✅ **256 tests collected** |
| test_tier1_unit.py full | All pass | ✅ **27 passed in 6.22s** |
| New test standalone | PASS | ✅ **1 passed in 0.12s** |
| test_tier2_component.py collection | 25 (was 26, -1 removed) | ✅ **25 collected** |
| test_tier2_component.py adjacent test | PASS | ✅ `test_comp_create_sqlite_tables_created` passed (12.67s) |
| Full 256-test suite | 256 passed | ⚠️ Not run to completion — timeout in review environment (same limitation as prior jobs 143de35c, 120ffb08) |

---

## 7. Documentation Review (IMPROVEMENTS.md / LOG.md)

### 7.1 IMPROVEMENTS.md ✅
- **Header counts**: Open tasks 9→8 (레거시 3→2), Completed 16→17. Arithmetic verified: 2+4+0+2=8 ✅
- **Section 4 title**: "3건 → 2건" (C-3a completed, C-4 completed, C-3b + C-6 remain = 2) ✅
- **Section 5 title**: "13건 → 14건" (P2-2 added) ✅
- **New P2-2 section**: Accurately describes all changes including mutation-test verification of the new regression guard.
- **Pre-existing discrepancy**: Header says 17 completed but Section 5 says 14 (gap of 3). This gap was pre-existing (was 16 vs 13 = 3) and is **not introduced by P2-2**. Both counts incremented by exactly +1.

### 7.2 LOG.md ✅
- P2-2 entry added with implementation summary and "256 passed (100%)" verification claim.
- Date updated: 2026-08-15 → 2026-08-16.
- Previous P2-1 entry renumbered from "1)" to "2)".

---
## 8. Lint / Operability / Loss Analysis

### 8.1 Lint ✅
- No syntax errors in any modified file.
- No unused imports/variables introduced (removals only made the code cleaner).
- `run_lib_func` helper still used 15× in test_tier1_unit.py — not orphaned by test removals.
- `subprocess` import in test_tier1_unit.py — still used by new test and other existing tests. ✅

### 8.2 Operability ✅
- `_resolve_real_herdr_path()` return channel (stdout/rc) is invariant — `has_real_herdr()` and all callers unaffected.
- `create_session.sh` arg parser unchanged — `--isolate`/`--no-isolate` still accepted as no-ops.
- `registry.py` public API (`__all__`) unchanged — `VALID_STATUSES` retained.
- No function signatures changed, no calling conventions altered.

### 8.3 Loss ✅
- **No functionality lost**: The 4 stubs were empty/no-op with zero production callers. Removing them changes no runtime behavior.
- **No test coverage lost**: The 4 removed tests verified empty output from empty functions — their removal is co-dependent with the code removal. The new regression guard test adds meaningful coverage.
- **No backward compatibility lost**: `--isolate`/`--no-isolate` CLI flags still accepted (no-op with notice). External scripts using these flags (e.g., `deploy/install_mam.sh`, `deploy/install.sh`) still work.

---

## 9. Boundary Compliance

| Boundary | Required | Verified |
|---|---|---|
| C-3b (`isolation.root` consumers) | Do NOT touch | ✅ No diff lines in `verify_session_uuid`, `find_workspace_uuid`, `mam_session_iso_root`, `stop_session.sh` purge |
| `_HERDR_SHIM_DIR_PATTERN` | Do NOT touch | ✅ Not in diff; still at lib.sh:83, used at :105 |
| `_HERDR_SKILLS_BIN_PATTERN` | Do NOT touch | ✅ Not in diff; still at lib.sh:84, used at :105 |
| `VALID_STATUSES` | Do NOT touch | ✅ Not in diff; still at registry.py:38, used at :149-150 |
| `--isolate`/`--no-isolate` branches | Do NOT touch | ✅ Not in diff; still at create_session.sh:70-71 |

---

## 10. Limitations

1. **Full 256-test suite not run to completion** — times out in review environment (~6 min). Ran directly-relevant subsets: test_tier1_unit.py (27/27 pass), test_tier2_component.py collection (25) + adjacent test, new test standalone. Same limitation as prior review jobs.
2. **`shellcheck` not installed** — static analysis limited to `bash -n` syntax check.
3. **`_REAL_HERDR_PATH` external consumers** (outside repo) not searched — `_` prefix denotes private symbol; repo tree, generated shims, hooks, and `~/.claude/settings.json` all confirmed no references by prior planner analysis.
4. **macOS / serial execution** — Linux / `pytest-xdist` parallel not verified (xdist not installed).

---

## 11. Conclusion

The P2-2 implementation is a textbook dead-code cleanup: every removed line traces directly to the task specification, no collateral lines were touched, C-3b boundaries were respected, and a meaningful regression guard was added to replace vacuous tests. The documentation updates are accurate and consistent. All syntax checks pass, all runnable test subsets pass, and the collection count (256) matches the documented expectation.

[VERDICT: PASS]
