v1.9.416 — add-family CLI argument consistency (9th review, UR-0122)
leerness 1.9.416 — add류 CLI 인자 일관성 (9th 외부평가, UR-0122)
일자: 2026-06-07 · 유형: 일관성/입력검증 · 회귀 0
한 줄 요약
task add/requests add/decision add 의 제목 파싱을 공유 헬퍼 _parseAddTitle 로 단일화 — 경로형 positional 이 제목에 흡수되던 불일치(Sonnet/Codex 공통 발견) 차단 + 빈/경로-only 제목 거부(exit 1).
배경
9번째 외부 멀티모델 리뷰의 최강 UX 발견: task add "제목" /some/path 가 경로를 제목에 흡수("제목 /some/path")한 반면 decision add 는 1.9.351(UR-0064)에서 이미 차단. 같은 add 패러다임에서 동작이 갈림.
수정
_parseAddTitle(args, startIdx)(pure-utils): positional join, 첫--flag또는 경로형(/x·C:\x·./x·../x)에서 멈춤. 단일 출처.- task/requests/decision add 모두 사용 → 경로 흡수 일관 차단.
- 빈/경로-only 제목 →
failJson(--json:{ok:false,code:"empty_title"}) + exit 1 (기존 빈 task 생성 제거).
검증 (회귀 0)
- selftest 161→162 PASS (_parseAddTitle 4 단위 + task/requests 와이어)
- E2E 415→416 PASS (경로 흡수 차단 + 빈/경로-only exit 1 + --json + requests 경로 break)
변경 파일
lib/pure-utils.js · bin/harness.js · scripts/e2e.js · CHANGELOG.md · README.md · package.json
후속
team add positional path 일관성(UR-0122 잔여) · status/health 라벨(UR-0121) · contract field 범용화(UR-0123) · init 프로파일/명령 계층화(UR-0124).