Files
portfolio-hub/.proofline/criteria/ac-0044.md
T
genichin deaaa96c46 feat: add service token rename command (#40)
* docs: preserve original issue 5 body

* feat: add service token rename command

* test: normalize rich option errors
2026-09-19 21:19:39 +09:00

1.6 KiB

id, status
id status
ac-0044 active

service-token rename CLI 확인·출력·회귀 계약

Criterion

CLI는 pfhub service-token rename NAME --new-name NEW_NAME [--force/-f]를 제공해야 한다. 기본 실행은 old/new name을 식별하는 확인 prompt를 표시하고 거부 시 성공 exit로 종료하면서 어떠한 rename도 수행하지 않아야 하며, --force/-f는 prompt 없이 같은 동작을 수행해야 한다. 성공한 table 및 JSON 출력은 token_id, old_name, new_name, changed만 표현하고 raw/masked token, token hash/prefix나 다른 secret-derived 값을 포함하지 않아야 한다. Missing/duplicate domain error는 기존 CLI error contract에 따라 non-zero로 반환되어야 하며 기존 list, issue, rotate, rebind, revoke, migrate-null-daemon의 동작은 유지되어야 한다.

Verification

  • 성공 조건: command help와 required --new-name가 노출되고, 승인 prompt와 --force 실행의 table/JSON이 정확한 네 필드 및 changed 상태를 반환한다. Same-name 결과도 changed=false로 직렬화된다.
  • 실패·경계 조건: prompt 거부는 exit code 0과 zero service/repository call을 보장한다. Missing/duplicate는 exit code 1과 지정된 message를 반환한다. 모든 success/error 출력에 raw token, hash, prefix와 credential이 없어야 한다.
  • 검사 방법: Typer CLI runner test로 help, missing option, prompt accept/reject, --force와 -f, table/JSON, same-name, missing/duplicate를 검증하고 기존 service-token CLI regression suite 및 full test suite를 실행한다.