자동화·데이터 Capstone
문제 설명이나 데모 화면에서 멈추지 않고 요구사항·사용자 흐름·data contract·failure boundary·운영 기준을 먼저 봉인한 뒤 CLI·파일과 API 또는 pandas를 결합한 하나의 제품을 package·test·secure·observe·attest하고, 실패와 복구를 재현 가능한 evidence bundle로 방어한다.
- 작은 수업
- 72개
- 바로 풀어볼 수 있는 문제
- 8 / 576개
- 직접 움직이는 그림
- 1 / 72개
- 나중에 다시 풀기
- 1일 · 7일 · 30일 뒤
모든 작은 수업이 같은 순서로 이어져요
보고, 해보고, 내 말로 설명하는 열두 단계
먼저 골라 보고, 직접 해보고, 생각과 달라진 첫 곳을 찾아요. 한 가지를 바꿔 다시 해본 뒤 새로운 생활 장면에서도 같은 생각을 쓸 수 있는지 확인해요.
- 01오늘 할 일왜 배우는지
- 02먼저 떠올리기이미 아는 것
- 03그림으로 보기어떻게 움직이나
- 04먼저 골라보기하기 전 생각
- 05직접 해보기무엇이 보이나
- 06막힌 곳 찾기처음 다른 곳
- 07하나 바꿔보기한 가지
- 08내가 만들기직접 완성
- 09다시 확인하기새 문제로 확인
- 10내 말로 설명한 문장 기록
- 11생활에 써보기새로운 장면
- 12나중에 다시1·7·30일
72개 작은 수업으로 나눴어요
배울 내용 골라 보기
각 작은 수업에는 그림, 자주 헷갈리는 곳, 막혔을 때 볼 도움과 여덟 연습 문제가 있어요. 먼저 그림으로 이해하고, 따라 해보고, 혼자 풀고, 내가 한 일을 남기는 순서로 열립니다.
- 01
학습 자료와 연습 문제 준비 중
생활의 마찰을 실행 가능한 문제 charter로 바꾼다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 02
학습 자료와 연습 문제 준비 중
사용자·stakeholder·decision owner를 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 03
학습 자료와 연습 문제 준비 중
outcome metric과 anti-metric을 함께 정한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 숫자를 비교하는 그림 · 먼저 알면 좋은 수업 1개
- 04
학습 자료와 연습 문제 준비 중
constraint·non-goal·stop rule로 범위를 봉인한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 05
학습 자료와 연습 문제 준비 중
data·privacy·license 경계를 수집 전에 정한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 06
학습 자료와 연습 문제 준비 중
요구사항을 acceptance·test·artifact로 추적한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 07
학습 자료와 연습 문제 준비 중
system context와 trust boundary를 그린다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 08
학습 자료와 연습 문제 준비 중
port 계약과 adapter 구현을 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 09
학습 자료와 연습 문제 준비 중
pure core와 effect shell을 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령이 움직이는 순서를 한 줄씩 보는 그림 · 먼저 알면 좋은 수업 1개
- 10
학습 자료와 연습 문제 준비 중
실패·재시도·복구를 state machine으로 고정한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 11
학습 자료와 연습 문제 준비 중
ADR로 선택·대안·tradeoff를 남긴다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 12
학습 자료와 연습 문제 준비 중
walking skeleton으로 end-to-end 위험을 먼저 연다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 13
학습 자료와 연습 문제 준비 중
pyproject.toml을 package 계약으로 만든다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 14
학습 자료와 연습 문제 준비 중
src layout으로 설치된 code만 검사한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령이 움직이는 순서를 한 줄씩 보는 그림 · 먼저 알면 좋은 수업 1개
- 15
학습 자료와 연습 문제 준비 중
project.scripts와 import-safe main을 연결한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령을 직접 써 보는 창 · 먼저 알면 좋은 수업 1개
- 16
학습 자료와 연습 문제 준비 중
argparse로 사용자-facing CLI 계약을 만든다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령을 직접 써 보는 창 · 먼저 알면 좋은 수업 1개
- 17
학습 자료와 연습 문제 준비 중
configuration precedence와 secret 경계를 고정한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 18
학습 자료와 연습 문제 준비 중
exit code·dry-run·idempotency를 하나의 실행 계약으로 묶는다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 19
학습 자료와 연습 문제 준비 중
파일 입력을 parse·validate·quarantine한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 20
학습 자료와 연습 문제 준비 중
HTTP adapter에 timeout과 request budget을 건다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 시간 순서 그림 · 먼저 알면 좋은 수업 1개
- 21
학습 자료와 연습 문제 준비 중
retry·backoff·jitter를 실패 분류에 묶는다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 22
학습 자료와 연습 문제 준비 중
response schema와 semantic drift를 차단한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 23
학습 자료와 연습 문제 준비 중
staging·atomic publish·rollback으로 partial write를 막는다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 24
학습 자료와 연습 문제 준비 중
file+API 또는 file+pandas 통합을 bounded product로 닫는다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 25
학습 자료와 연습 문제 준비 중
요구사항에서 독립 unit oracle을 만든다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령이 움직이는 순서를 한 줄씩 보는 그림 · 먼저 알면 좋은 수업 1개
- 26
학습 자료와 연습 문제 준비 중
fixture scope·cleanup·isolation을 설계한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 27
학습 자료와 연습 문제 준비 중
equivalence partition과 boundary를 parametrize한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 28
학습 자료와 연습 문제 준비 중
port contract와 real adapter를 integration test한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 29
학습 자료와 연습 문제 준비 중
설치된 CLI를 end-to-end acceptance로 검증한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령을 직접 써 보는 창 · 먼저 알면 좋은 수업 1개
- 30
학습 자료와 연습 문제 준비 중
fault injection과 known-bad mutant로 oracle을 검증한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 처음 달라진 곳을 찾는 창 · 먼저 알면 좋은 수업 1개
- 31
학습 자료와 연습 문제 준비 중
asset·actor·data flow에서 threat를 모델링한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 32
학습 자료와 연습 문제 준비 중
A03 injection을 path·argument·data 경계에서 차단한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령이 움직이는 순서를 한 줄씩 보는 그림 · 먼저 알면 좋은 수업 1개
- 33
학습 자료와 연습 문제 준비 중
A08 software integrity 경계를 dependency와 workflow에 적용한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 34
학습 자료와 연습 문제 준비 중
A09 logging에서 secret과 log injection을 제거한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 35
학습 자료와 연습 문제 준비 중
A10 exception taxonomy와 fail-safe outcome을 설계한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 36
학습 자료와 연습 문제 준비 중
fail-closed recovery를 security regression으로 봉인한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 처음 달라진 곳을 찾는 창 · 먼저 알면 좋은 수업 1개
- 37
학습 자료와 연습 문제 준비 중
Python runtime identity를 실행 receipt로 고정한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령을 직접 써 보는 창 · 먼저 알면 좋은 수업 1개
- 38
학습 자료와 연습 문제 준비 중
venv를 복사하지 않고 dependency contract로 재생성한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 시간 순서 그림 · 먼저 알면 좋은 수업 1개
- 39
학습 자료와 연습 문제 준비 중
dependency group과 lock 보장 범위를 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 40
학습 자료와 연습 문제 준비 중
transitive hash까지 고정해 secure install을 검증한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령을 직접 써 보는 창 · 먼저 알면 좋은 수업 1개
- 41
학습 자료와 연습 문제 준비 중
sdist와 wheel을 고정 toolchain으로 build한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 42
학습 자료와 연습 문제 준비 중
clean wheel 설치와 reproducibility manifest를 봉인한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 43
학습 자료와 연습 문제 준비 중
GitHub Actions를 required release gate로 설계한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 44
학습 자료와 연습 문제 준비 중
current·regression CI version matrix를 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 45
학습 자료와 연습 문제 준비 중
Action을 full SHA로 고정하고 최소 권한을 준다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 46
학습 자료와 연습 문제 준비 중
workflow script injection을 막고 OIDC를 경계화한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령이 움직이는 순서를 한 줄씩 보는 그림 · 먼저 알면 좋은 수업 1개
- 47
학습 자료와 연습 문제 준비 중
CI artifact와 cache의 신뢰·retention을 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 48
학습 자료와 연습 문제 준비 중
CI attestation과 human release verdict를 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 49
학습 자료와 연습 문제 준비 중
CycloneDX SBOM으로 component inventory를 만든다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 50
학습 자료와 연습 문제 준비 중
SPDX 표현으로 license evidence를 정규화한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 51
학습 자료와 연습 문제 준비 중
vulnerability audit를 영향 기반 triage로 연결한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 52
학습 자료와 연습 문제 준비 중
source·wheel·SBOM·report를 하나의 release identity로 묶는다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 53
학습 자료와 연습 문제 준비 중
SLSA provenance claim의 version과 한계를 명시한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 54
학습 자료와 연습 문제 준비 중
Trusted Publishing과 attestation 검증을 분리한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령을 직접 써 보는 창 · 먼저 알면 좋은 수업 1개
- 55
학습 자료와 연습 문제 준비 중
구조화 event log를 운영 계약으로 만든다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 56
학습 자료와 연습 문제 준비 중
run·correlation ID로 evidence를 연결한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 57
학습 자료와 연습 문제 준비 중
사용자 outcome에서 metric과 SLI를 도출한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 숫자를 비교하는 그림 · 먼저 알면 좋은 수업 1개
- 58
학습 자료와 연습 문제 준비 중
SLO와 error budget을 release policy에 연결한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 숫자를 비교하는 그림 · 먼저 알면 좋은 수업 1개
- 59
학습 자료와 연습 문제 준비 중
seeded incident를 timeline으로 재생한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 시간 순서 그림 · 먼저 알면 좋은 수업 1개
- 60
학습 자료와 연습 문제 준비 중
runbook·restore proof·post-incident review를 닫는다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 61
학습 자료와 연습 문제 준비 중
AI-off baseline과 사용 disclosure를 먼저 봉인한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 시간 순서 그림 · 먼저 알면 좋은 수업 1개
- 62
학습 자료와 연습 문제 준비 중
AI 제안을 diff·source·claim 단위로 감사한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 명령이 움직이는 순서를 한 줄씩 보는 그림 · 먼저 알면 좋은 수업 1개
- 63
학습 자료와 연습 문제 준비 중
독립 mutant로 반증하고 사람이 최종 판정한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 처음 달라진 곳을 찾는 창 · 먼저 알면 좋은 수업 1개
- 64
대표 체험 수업
Gold: 64-state evidence shiproom에서 release를 방어한다
8개 바로 풀 문제 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
- 65
학습 자료와 연습 문제 준비 중
PCEP foundation objective를 project evidence에 보수적으로 연결한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 66
학습 자료와 연습 문제 준비 중
PCAP package·I/O objective에 선택적으로 전이한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 67
학습 자료와 연습 문제 준비 중
PCPP1 선택 engineering objective를 검증한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 68
학습 자료와 연습 문제 준비 중
PCPP2 syllabus 부재를 deferred 상태로 유지한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 모습이 바뀌는 순서 그림 · 먼저 알면 좋은 수업 1개
- 69
학습 자료와 연습 문제 준비 중
PCEA 제한 공개 objective를 limited로 표시한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 70
학습 자료와 연습 문제 준비 중
PCET code-review 공개 범위를 review-required로 감사한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 비교표 · 먼저 알면 좋은 수업 1개
- 71
학습 자료와 연습 문제 준비 중
GH-900 선택 collaboration objective를 release 흐름에 연결한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 일의 순서를 선으로 이은 그림 · 먼저 알면 좋은 수업 1개
- 72
학습 자료와 연습 문제 준비 중
GH-200 선택 workflow·security objective로 최종 전이한다
8개 연습 문제 틀 · 자주 헷갈리는 곳 3개 · 직접 움직여 보는 그림 · 먼저 알면 좋은 수업 1개
마지막에 혼자 해 보는 도전
malformed-input·rate-limited-dependency·ambiguous-commit-crash·artifact-drift 4개 scenario, demo-only·guarded-run·tested-recovery·evidence-first-release 4개 policy, SPECIFY_ACCEPTANCE·INTEGRATE_EXECUTE·FAULT_RECOVER·RELEASE_REPRODUCE 4개 phase를 결합한 4×4×4=64-state release gate에서 하나의 reliable automation product를 방어한다. verdict는 마지막 phase 전까지 SEALED다.
실제와 닮은 상황
고정된 synthetic 업무 요청이 malformed input, local HTTP rate limit, ambiguous commit crash, artifact drift와 secret-like sentinel을 주입한다. 학습자는 CLI+file+(API 또는 pandas)를 Python package로 전달하고 UTC·outbound deny·bounded resource 아래 demo-only에서 evidence-first-release까지 네 policy를 비교하며 release candidate를 승인·차단·복구하는 production-shaped shiproom review를 수행한다.
AI 도구·표시 가능한 model/version·사용일·task scope·입력 data classification, 수용/거절/수정한 제안과 영향 파일, 독립 positive/negative/adversarial test·lint/security/license/IP scan, reviewer verdict·residual risk를 기록한다. raw private prompt·secret·hidden grader는 공개하지 않으며 AI 없이 미공개 failure variant를 통과해야 한다. 이 공개서는 correctness·authorship·license safety·provenance의 자동 증명이 아니다.
마지막에 완성할 것
- problem charter·persona·user journey·data contract·non-goal·privacy/license boundary와 requirement→acceptance→test→artifact traceability matrix
- ADR·architecture diagram·pure core/effect adapter·failure state machine, versioned pyproject.toml·src package·CLI와 configuration precedence·exit-code contract
- positive·boundary·adversarial·recovery fixture를 가진 unit·contract·integration·E2E·acceptance test suite와 pytest 9.1.1 current/9.0.0 regression 결과·mutation/fault-injection report
- Python 3.14.6·build 1.5.0·setuptools 83.0.0·wheel 0.47.0·packaging 26.2 runtime receipt, clean-wheel install 결과, sdist/wheel hash와 dependency/license inventory
- full-SHA·최소 권한 GitHub Actions workflow, CI run/artifact receipt, CycloneDX 1.7 SBOM·vulnerability audit·artifact attestation과 gh attestation verify 결과
- structured redacted log·run/correlation ID·metric·SLI/SLO, seeded incident timeline·runbook·rollback/restore proof와 failure review
- README·operator guide·known limitation·claim ledger, AI tool/scope/data boundary·accepted/refactored/rejected change·independent test·human verdict·residual-risk disclosure
다 했는지 확인하는 기준
- CLI+file+(API 또는 pandas)의 한 제품에서 user-visible success와 invalid input·timeout/drift·partial write·corrupted config/dependency failure의 expected exit·artifact·rollback 상태를 acceptance trace로 고정한다.
- 순수 core와 filesystem·network·time·environment adapter를 분리하고 timeout·bounded retry/backoff·idempotency key 또는 deduplication·atomic staging/publish·rollback을 failure state machine과 test로 검증한다.
- 모든 공개 test는 implementation과 독립된 requirement oracle에서 유도하고 positive·boundary·adversarial·recovery·clean restart를 포함하며 pytest pass나 coverage만으로 결함 부재를 주장하지 않는다.
- src layout의 sdist/wheel을 build 1.5.0으로 만들고 fresh environment에서 wheel을 설치해 CLI·import·acceptance를 다시 실행하며 yanked build 1.5.1 결과를 재사용하지 않는다.
- GitHub Actions dependency를 full commit SHA로 고정하고 job별 최소 permissions·injection-safe input·protected environment·OIDC를 적용하며 moving ubuntu-latest label만으로 exact OS를 주장하지 않는다.
- CycloneDX 1.7 SBOM·hash·audit·provenance·artifact attestation을 동일 release identity로 연결하고 attestation을 실제 검증하되 inventory·provenance·audit 성공을 vulnerability-free나 semantic correctness로 과장하지 않는다.
- structured log는 secret·credential·private payload·newline injection을 배제하고 run ID로 test·metric·incident·artifact를 연결하며 하나의 SLI/SLO와 restore proof를 제출한다.
- AI 사용 전에 사람이 acceptance와 data boundary를 고정하고 accepted/refactored/rejected suggestion, independent negative test, AI 없이 통과한 hidden variant와 human verdict·잔여 위험을 공개한다.
- PCEA limited availability, PCET exam-code 불일치, PCPP2 syllabus unavailable, PCEP/PCAP announced update를 claim ledger에 기록하고 선택 objective를 전체 시험 대비나 합격 보장으로 확대하지 않는다.
- CP64의 여덟 공개 client-safe self-review specification과 별도 hidden oracle 경계를 지키고 source·test·README·wheel/hash·SBOM·CI·attestation verification·incident review·AI disclosure를 하나의 release manifest로 방어한다.
