Files
multi-agent-mux/.agents/reports/canary-projects-multi-agent-mux-creator-cline/report-985400a2.md
T

12 KiB
Raw Blame History

📋 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_uuidlib.sh:1260 (via Python import)
  • find_workspace_uuidlib.sh:1331
  • mam_session_iso_rootlib.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_noopPASSED (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-178TERMINAL_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]