콘텐츠로 이동

pdks explain

pdks explain은 등록된 항목을 판정 없이 보여 줍니다. 실제 세션·커밋 실행에 쓰는 조립 함수를 호출하므로, 별도로 추정한 결과가 아니라 실제 등록 내용을 확인할 수 있습니다.

터미널 창
pdks explain

추가 인자는 허용하지 않습니다. 작업 디렉터리의 설정을 읽고, 두 표면을 조립한 뒤 결과를 출력합니다.

출력은 표면별로 나뉩니다. 각 표면의 등록 항목과 집계를 보여 주며, 등록 항목은 한 줄씩 표시합니다.

행 종류는 다음과 같습니다.

  • meta — 판정 사슬 자체를 지키는 등록
  • declare — 컴파일된 규율 항목 하나
  • skip — 판정할 수 없는 사유를 표시하는 등록
  • draft — 아직 판정 대상으로 전환하지 않은 draft: true 항목

이 명령은 판정기에 입력을 전달하지 않으며 텔레메트리나 대화 기록 파일도 읽고 쓰지 않습니다. 세션 표면에는 파일을 읽지 않는 대화 기록 대체물을 넘겨 transcript-mod 등록도 실제 훅을 조립할 때처럼 표시합니다.

상황 결과
설정이 유효하고 두 표면이 조립됨 종료 0
추가 인자 종료 2, stderr에 사용법 출력
설정이 없거나 여러 개이거나 유효하지 않음 종료 2
그 밖의 조립 실패 종료 2

실패 시 stdout은 0바이트로 남습니다. 중간 테이블을 출력하지 않습니다.

터미널 창
pdks explain

출력은 설정 파일 경로로 시작하고, 그다음 세션 표면 블록 하나와 변경 집합 표면 블록 하나가 나옵니다. 추가 규율이 없는 시작 설정은 이런 모양입니다(N은 조립이 센 보호 경로 개수이고, skip 행 하나는 정상입니다. 쓰기 대상을 판정할 수 없는 셸 명령이 착지하는 자리입니다).

pdks explain — polydeukes.config.yaml
input: call IR (one call, stdin) · disciplines 0 · sessionDisciplines 0 · disciplines: advise unless enforce: block · meta: block
registrations 3 · declare 0 · skip 1 · meta 2 · draft 0
meta self-mod paths N (common; includes the config file itself)
meta transcript-mod content predicate · conditional: session.evidencePath
skip shell-unjudgeable a shell command whose write target this layer cannot determine
input: --diff (change set, stdin) · disciplines 0 · changeSetDisciplines 0 · disciplines: advise unless enforce: block
registrations 2 · declare 0 · skip 1 · meta 1 · draft 0
meta self-mod paths N (common; includes the config file itself)
skip shell-unjudgeable a shell command whose write target this layer cannot determine

표면 머리줄은 그 표면이 컴파일하는 목록의 이름과 각 목록의 항목 수를 적습니다. 세션 머리줄은 disciplines <n> · sessionDisciplines <n>을, 변경 집합 머리줄은 disciplines <n> · changeSetDisciplines <n>을 출력하며, 두 수 모두 조립 전에 설정에 적힌 그대로 셉니다. 판정을 돌리지 않고 모든 항목의 배치를 확인하는 방법이 이 머리줄 둘을 읽는 것입니다. 목록을 옮긴 항목은 두 머리줄에서 각각 수 하나를 움직입니다.

N은 조립된 경로 개수입니다. declare 행의 라벨은 항목 id이고 설명은 카탈로그 좌표입니다. skip 행은 건너뛴 이유를 적습니다. draft 행은 unpromoted — no judgment입니다.