학습 본문으로 건너뛰기
VAIRODE
자동화·데이터 Capstone47번째 작은 수업
오늘은 질문 하나만 해결해요47 / 72

따라 해보기 · 직접 바꿔보기

CI artifact와 cache의 신뢰·retention을 분리한다

오늘의 질문

artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다. 이를 생략하면 cache hit의 build output을 검증 없이 release하거나 서로 다른 commit의 artifact 이름이 같아 evidence를 덮어쓴다. 상황에서도 데모는 보일 수 있지만 제품·검증·운영 책임을 방어할 수 없습니다.

아직 답을 몰라도 괜찮아요. 아래 작은 예시를 보고 먼저 예상해 보세요.

01 · 같이 연습해요

작은 문제부터 하나씩 직접 풀어봐요

먼저 예상하고, 한 단계씩 확인하고, 막힌 곳을 고쳐 봐요. 도움을 열어도 괜찮아요. 도움을 본 문제는 나중에 모양을 바꿔 다시 풀어보면 됩니다.

연습에서 작성 중인 답0 / 8
  1. 01

    찾아보기 · 기초

    cp47 recognize · CI artifact와 cache의 신뢰·retention을 분리한다: CI artifact·cache 표식 중 “artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.”을 충족하는 상태를 고른다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    정답과 비교
  2. 02

    먼저 생각하기 · 기초

    cp47 predict · CI artifact와 cache의 신뢰·retention을 분리한다: AI 없이 “cache hit의 build output을 검증 없이 release하거나 서로 다른 commit의 artifact 이름이 같아 evidence를 덮어쓴다.”를 실행했을 때 exit·state·artifact·evidence가 어떻게 달라질지 먼저 예측한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    움직임과 비교
  3. 03

    순서 따라가기 · 익힌 것을 써보기

    cp47 trace · CI artifact와 cache의 신뢰·retention을 분리한다: CI artifact → cache → retention → run identity를 따라 요청에서 artifact identity/retention/access·cache key provenance·hash verification·cross-run mismatch test까지 최초 contract divergence를 추적한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    움직임과 비교
  4. 04

    내 말로 설명하기 · 익힌 것을 써보기

    cp47 explain · CI artifact와 cache의 신뢰·retention을 분리한다: artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.이 필요한 이유와 artifact identity/retention/access·cache key provenance·hash verification·cross-run mismatch test가 입증하지 못하는 범위를 함께 설명한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    설명 기준과 비교
  5. 05

    빈칸 채우기 · 익힌 것을 써보기

    cp47 complete · CI artifact와 cache의 신뢰·retention을 분리한다: 누락된 guard·effect boundary·failure verdict를 채워 “artifact와 cache metadata를 구분하고 release evidence identity를 검증하는 CI collector를 구현한다.”을 fail-closed로 완성한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    답과 설명 함께 비교
  6. 06

    틀린 곳 고치기 · 익힌 것을 써보기

    cp47 debug · CI artifact와 cache의 신뢰·retention을 분리한다: 독립 mutant로 “cache hit의 build output을 검증 없이 release하거나 서로 다른 commit의 artifact 이름이 같아 evidence를 덮어쓴다.”를 재현하고 최초 위반 지점만 수정한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    답과 설명 함께 비교
  7. 07

    직접 만들기 · 새 문제

    cp47 implement · CI artifact와 cache의 신뢰·retention을 분리한다: artifact와 cache metadata를 구분하고 release evidence identity를 검증하는 CI collector를 구현한다.을 frozen synthetic fixture와 bounded effect로 구현해 artifact identity/retention/access·cache key provenance·hash verification·cross-run mismatch test를 생성한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    정답과 비교
  8. 08

    새 문제에 써보기 · 새 문제

    cp47 transfer · CI artifact와 cache의 신뢰·retention을 분리한다: test report·wheel·SBOM을 workflow 간 전달하고 보존하는 pipeline로 계약을 옮겨 AI 보조의 변경점과 사람이 최종 승인할 근거를 방어한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      CI artifact와 cache의 신뢰·retention을 분리한다의 output만 보지 말고 input identity, exit, side effect, rollback, log/metric과 artifact hash를 분리하세요.

    2. 개념

      artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    설명 기준과 비교

8개 답이 남았습니다.

02 · 막힌 곳을 찾아요

틀린 답에서 생각이 갈라진 첫 지점 찾기

헷갈림 01

cache hit의 build output을 검증 없이 release하거나 서로 다른 commit의 artifact 이름이 같아 evidence를 덮어쓴다.

겉으로 보이는 막힘
CI artifact와 cache의 신뢰·retention을 분리한다의 happy path는 끝나지만 사용자-visible 상태와 release evidence가 계약에서 벗어난다.
막힌 까닭
artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.을 실행 전 acceptance와 실패 상태로 고정하지 않았다.
다시 해보는 방법
artifact와 cache metadata를 구분하고 release evidence identity를 검증하는 CI collector를 구현한다.에 guard·rollback 또는 reject verdict를 추가하고 artifact identity/retention/access·cache key provenance·hash verification·cross-run mismatch test를 다시 만든다.
헷갈림 02

AI가 CI artifact와 cache의 신뢰·retention을 분리한다의 구현과 test를 함께 생성하고 성공이라고 설명한다.

겉으로 보이는 막힘
같은 가정에서 나온 code와 oracle이 cache hit의 build output을 검증 없이 release하거나 서로 다른 commit의 artifact 이름이 같아 evidence를 덮어쓴다.를 놓쳐 false green을 만든다.
막힌 까닭
AI-off baseline과 독립 requirement oracle을 먼저 봉인하지 않았다.
다시 해보는 방법
기존 expected를 보존하고 AI diff만 검토한 뒤 별도 작성한 retention mutant로 반증한다.
헷갈림 03

artifact identity/retention/access·cache key provenance·hash verification·cross-run mismatch test 없이 screenshot·demo·AI 요약만 release 근거로 제출한다.

겉으로 보이는 막힘
clean environment에서 CI artifact와 cache의 신뢰·retention을 분리한다 결과와 복구 경로를 재현하거나 책임 있게 거절할 수 없다.
막힌 까닭
artifact identity·command·environment·human verdict를 하나의 evidence chain으로 연결하지 않았다.
다시 해보는 방법
artifact identity/retention/access·cache key provenance·hash verification·cross-run mismatch test를 clean replay하고 accept·refactor·reject 및 residual risk를 사람이 서명한다.

03 · 내게 맞는 도움 고르기

같은 목표를 원하는 도움만큼 연습해요

안내 받으며

안내형

CI artifact → cache → retention → run identity 순서로 baseline·AI diff·independent mutant·human verdict 칸을 채운다.

CI artifact와 cache의 신뢰·retention을 분리한다의 정상 경로와 실패 경로, AI 제안 변경, 독립 검증, 사람 판정을 번호·도형·선 종류로 구분한 도식에서 색상 외에도 contract·build·test·security·telemetry·SBOM·attestation·ship verdict label과 선 종류를 함께 표시한다.
혼자 해보기

내 힘으로

cp47 CI artifact와 cache의 신뢰·retention을 분리한다: artifact는 run·commit·hash·retention과 access를 가진 release evidence로, cache는 untrusted 재사용 최적화로 취급해 executable/result authority를 주지 않는다.의 미공개 synthetic product variant를 먼저 판정한 뒤 Python 3.14.6·pytest 9.1.1 current lane과 pytest 9.0.0 regression lane의 hash-pinned local harness에서 실행 receipt를 만들고 불일치만 공식 계약으로 교정한다.

공식 문서·문법·library API는 열 수 있지만 해당 변형의 hidden acceptance value·private fault schedule·server verdict·attestation subject·forbidden sentinel·expected incident timeline은 먼저 제공하지 않는다.
더 도전하기

심화형

test report·wheel·SBOM을 workflow 간 전달하고 보존하는 pipeline의 runtime·data volume·permission·failure timing 중 두 축을 바꾼 private variant에서도 같은 evidence contract를 방어한다.

CI artifact와 cache의 신뢰·retention을 분리한다에서 기능 수보다 contract clarity·bounded effect·failure visibility·reproducibility·operator cost를 우선하고 포기한 범위를 기록한다.