처음이어도 괜찮아요 · 그림부터 시작해요
파일 입력을 parse· validate· quarantine한다
path·size·encoding·format·schema·row budget을 읽기 전에 검사하고 원본은 immutable snapshot으로 보존하며 invalid input을 quarantine한다. 이를 생략하면 사용자 경로를 그대로 열고 일부 row를 읽은 뒤 decode·schema 오류가 나서 원본과 partial state가 섞인다. 상황에서도 데모는 보일 수 있지만 제품·검증·운영 책임을 방어할 수 없습니다.
아직 답을 몰라도 괜찮아요. 아래 작은 예시를 보고 먼저 예상해 보세요.01 · 가볍게 시작하기
정답을 보기 전에 먼저 골라볼까요?
cp19 frozen synthetic fixture · fixed clock/UTC · outbound deny · secret-like sentinel · one independent mutant- 1먼저 골라보기
틀려도 괜찮아요. 지금 생각한 답 하나를 정해요.
- 2그림으로 확인하기
움직이는 순서와 달라지는 곳만 천천히 찾아요.
- 3내 말로 다시 말하기
한 문장으로 말해 보면 내가 이해한 곳을 확인할 수 있어요.
02 · 그림으로 보기
그림이 움직이는 순서를 직접 확인해요
- 01관찰preflight · schema validation · quarantine · immutable input
- 02추론path·size·encoding·format·schema·row budget을 읽기 전에 검사하고 원본은 immutable snapshot으로 보존하며 invalid input을 quarantine한다. input fingerprint·preflight result·schema/error ledger·immutable snapshot·quarantine receipt는 사용자 경로를 그대로 열고 일부 row를 읽은 뒤 decode·schema 오류가 나서 원본과 partial state가 섞인다.를 포함한 정상·경계·실패 실행에서 독립적으로 다시 계산할 수 있어야 한다. 파일 입력을 parse·validate·quarantine한다은 AI-off 기준선을 먼저 봉인하고 AI 제안 diff를 검토한 뒤, AI가 보지 못한 mutant로 재검증하고 사람이 승인·수정·거절한다. CSV·JSON·text 파일을 받는 로컬 데이터 처리 도구로 전이할 때 구현보다 contract·effect boundary·evidence owner·residual risk를 먼저 보존한다.
- 03검증파일 입력을 parse·validate·quarantine한다의 contract·owner·normal/boundary/failure outcome을 AI 없이 먼저 고정한다. 사용자 경로를 그대로 열고 일부 row를 읽은 뒤 decode·schema 오류가 나서 원본과 partial state가 섞인다.를 frozen synthetic fixture로 재현하고 최초 divergence와 expected verdict를 설명한다. AI 제안은 baseline과 diff로만 검토하고 독립 mutant에서 bounded read와 explicit schema를 가진 fail-closed file intake adapter를 구현한다.을 다시 실행한다. input fingerprint·preflight result·schema/error ledger·immutable snapshot·quarantine receipt와 사람의 accept·refactor·reject 판정 및 residual risk를 함께 제출한다.
처음 보는 말도 책 읽듯 풀어봐요
이 수업은 쉬운 뜻과 생활 예를 아직 함께 준비하지 못했어요. 설명 없는 정확한 이름은 먼저 보여 주지 않을게요.
그림에서 찾을 쉬운 규칙
- 01path·size·encoding·format·schema·row budget을 읽기 전에 검사하고 원본은 immutable snapshot으로 보존하며 invalid input을 quarantine한다.
- 02input fingerprint·preflight result·schema/error ledger·immutable snapshot·quarantine receipt는 사용자 경로를 그대로 열고 일부 row를 읽은 뒤 decode·schema 오류가 나서 원본과 partial state가 섞인다.를 포함한 정상·경계·실패 실행에서 독립적으로 다시 계산할 수 있어야 한다.
- 03파일 입력을 parse·validate·quarantine한다은 AI-off 기준선을 먼저 봉인하고 AI 제안 diff를 검토한 뒤, AI가 보지 못한 mutant로 재검증하고 사람이 승인·수정·거절한다.
- 04CSV·JSON·text 파일을 받는 로컬 데이터 처리 도구로 전이할 때 구현보다 contract·effect boundary·evidence owner·residual risk를 먼저 보존한다.
03 · 같이 풀어보기
한 단계씩 따라가면 어렵지 않아요
CSV·JSON·text 파일을 받는 로컬 데이터 처리 도구의 축소된 product slice에서 파일 입력을 parse·validate·quarantine한다 release 판단을 수행한다.
cp19 frozen synthetic fixture · fixed clock/UTC · outbound deny · secret-like sentinel · one independent mutant04 · 이제 내가 해볼 차례
여기까지 오면 이런 일을 할 수 있어요
bounded read와 explicit schema를 가진 fail-closed file intake adapter를 구현한다.을 수행하고 input fingerprint·preflight result·schema/error ledger·immutable snapshot·quarantine receipt로 path·size·encoding·format·schema·row budget을 읽기 전에 검사하고 원본은 immutable snapshot으로 보존하며 invalid input을 quarantine한다.을 독립 검증한다.
- 파일 입력을 parse·validate·quarantine한다의 contract·owner·normal/boundary/failure outcome을 AI 없이 먼저 고정한다.
- 사용자 경로를 그대로 열고 일부 row를 읽은 뒤 decode·schema 오류가 나서 원본과 partial state가 섞인다.를 frozen synthetic fixture로 재현하고 최초 divergence와 expected verdict를 설명한다.
- AI 제안은 baseline과 diff로만 검토하고 독립 mutant에서 bounded read와 explicit schema를 가진 fail-closed file intake adapter를 구현한다.을 다시 실행한다.
- input fingerprint·preflight result·schema/error ledger·immutable snapshot·quarantine receipt와 사람의 accept·refactor·reject 판정 및 residual risk를 함께 제출한다.
05 · 자주 헷갈리는 지점
틀린 답도 이유를 알면 다음에는 맞힐 수 있어요
01확장자가 맞으면 파일 형식과 encoding도 안전하다.
한 번 더 생각해 볼 질문cp19 파일 입력을 parse·validate·quarantine한다에서 이 주장을 깨는 최소 반례와 관찰 가능한 판정값을 쓰세요.
이렇게 고쳐 생각해요path·size·encoding·format·schema·row budget을 읽기 전에 검사하고 원본은 immutable snapshot으로 보존하며 invalid input을 quarantine한다.
02pandas나 json parser가 읽으면 domain validation까지 끝난 것이다.
한 번 더 생각해 볼 질문cp19 파일 입력을 parse·validate·quarantine한다에서 이 주장을 깨는 최소 반례와 관찰 가능한 판정값을 쓰세요.
이렇게 고쳐 생각해요사용자 경로를 그대로 열고 일부 row를 읽은 뒤 decode·schema 오류가 나서 원본과 partial state가 섞인다.는 성공 출력과 별도로 재현하고 최초 위반 지점에서 차단해야 한다.
03AI가 오류 row를 자동 수정하면 원본 snapshot은 필요 없다.
한 번 더 생각해 볼 질문cp19 파일 입력을 parse·validate·quarantine한다에서 이 주장을 깨는 최소 반례와 관찰 가능한 판정값을 쓰세요.
이렇게 고쳐 생각해요input fingerprint·preflight result·schema/error ledger·immutable snapshot·quarantine receipt와 독립 mutant·human verdict가 함께 있어야 승인 범위를 설명할 수 있다.
06 · 더 궁금할 때만 보기
선생님과 검토자를 위한 믿을 만한 원문
원문과 어디까지 참고했는지 펼쳐 보기처음 배우는 동안에는 열지 않아도 괜찮아요.
platform-aware path 처리와 resolve·existence·permission·atomic publish 전 staging 경계
fixture dependency·scope·yield cleanup과 tmp_path·monkeypatch·caplog 기반 deterministic failure injection
API·web 선택 variant의 versioned requirement identifier를 evidence에 연결한다. M12 전체가 ASVS를 충족한다고 주장하지 않는다.
